我正在使用vb6,并自动执行要在大量电子表格中执行的某些任务。
问题是设置我的工作表。我正在使用的工作簿上的大多数语法是相同的,但是在某些地方工作表的名称不同。
目前正在使用
for x = 2 to cellcount
set worksheet = workbook.sheets("*typical sheet name*")
*rest of code
我想设置这样的东西
伪代码
for x = 2 to cellcount
On error goto errorhandler
set worksheet= workbook.sheets("*typical sheet name*")
Errorhandler:
set worksheet= workbook.sheets("*secondary sheet name*")
*rest of code
如何在vb6中完成?
不要使用错误来控制逻辑流程,而要查看所有可用的名称并选择所需的名称:
Function GetBestMatchingSheet() As Worksheet
For Each GetBestMatchingSheet In ActiveWorkbook.Sheets
Select Case LCase$(GetBestMatchingSheet.Name)
Case "typical sheet name", "secondary sheet name", "third name"
Exit Function
End Select
Set GetBestMatchingSheet = Nothing
Next
End Function
...
dim foundSheet As Worksheet
set foundSheet = GetBestMatchingSheet()
If not foundSheet is Nothing then msgbox foundSheet.Name
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句