考虑下面的VBA函数:在Excel VBA中,“IsNull()”和“var = Null”之间有什么区别?
Function getFirstColumn(Optional sheetName As String) As Long
'In particular the IF statement below.
If sheetName = "" Or sheetName = Null Then sheetName = ActiveWorkbook.ActiveSheet.Name
With ActiveWorkbook.Worksheets(sheetName)
getFirstColumn = .Cells.Find("*", .Cells(1), xlFormulas, xlWhole, xlByColumns, xlNext).Column
If Err <> 0 Then getFirstColumn = 0
End With
End Function
使用此功能时,从第二开片使用时,我没有问题。
但是,当代码更改为这是基于函数的等价,'If IsEmpty(sheetName) Or IsNull(sheetName) Then sheetName = ActiveWorkbook.ActiveSheet.Name
,我得到的问题,如果我尝试使用功能从纸张不拥有它:
埃罗EM节奏德execução '9':
Subscrito论坛做间隔。
它们之间有什么不同?为什么这样的错误恰好触发?
所以...使用'sheetName = Null'和'IsNull(sheetName)'有什么区别?为什么一个人工作,另一个人不工作? – XenoRo
Nvm,现在我明白了... – XenoRo