如何使用VBA检查工作表是否存在

2017-02-22

VBA

有时,您可能需要知道工作簿中的工作表是否存在,无论是在VBA代码执行期间,还是工作簿中的结果。你可能正在用你的VBA代码创建和删除工作表,并且需要在创建/删除工作表之前测试工作表是否存在,以避免运行时错误。您的工作簿中也可能有依赖于您正在创建或删除的工作表的函数,您需要检查它们是否存在。

用户定义的函数,用于检查当前工作簿中是否存在工作表

step -001-How-To Check If A Worksheet-Exists-Using-VBA

这是一个简单的VBA函数,如果当前工作簿包含与函数中传递的名称相同的工作表,则返回true,否则返回false。这个函数是不区分大小写所以Sheet1和Sheet1被认为是相同的(Excel中的表格名称不区分大小写)。这里VBA被格式化为用户定义函数

Function WorksheetExists(SheetName As String) As Boolean Dim TempSheetName As String TempSheetName = UCase(SheetName) WorksheetExists = False For Each Sheet In Worksheets If TempSheetName = UCase(Sheet. name) Then WorksheetExists = True Exit Function End If Next Sheet End Function

我们可以使用这个代码= WorksheetExists (B3)测试任何文本字符串,以查看其是否作为工作表名称存在于当前工作簿中。

关于作者

约翰MacDougall

约翰MacDougall

John是微软MVP和自由顾问和培训师,擅长Excel, Power BI, Power automation, Power Apps和SharePoint。你可以在约翰的博客或YouTube频道上找到其他有趣的文章。

订阅

广告

相关文章

评论

1评论

  1. 彼得。摩尔

    这对我不起作用,但我通过添加来运行它;

    1.暗淡的ws =工作表
    2.将所有引用从' Sheet '改为ws

    回复

提交评论

您的电子邮件地址将不会被公布。必填字段已标记

这个网站使用Akismet来减少垃圾邮件。了解如何处理您的评论数据

获取最新消息

关注我们

在社交媒体上关注我们,了解Excel中的最新技巧!

把它钉在Pinterest上

分享这