我在Excel上遇到VBA错误很难,有人可以帮我理解这个错误的含义吗?VBA对象变量或With块变量未设置错误
“VBA对象变量或带块变量未设置错误”
我的函数应该检查是否纸张存在,如果不能创造新的工作表,将其重命名并返回到主函数。 代码工作,但错误总是抛出..
Function GetWorksheetFromName(Name As String) As Worksheet
Dim WS As Worksheet
For Each WS In ThisWorkbook.Worksheets
If StrComp(WS.Name, Name, vbTextCompare) = 0 Then
Set GetWorksheetFromName = WS
Exit Function
End If
Next WS
With ThisWorkbook
Set WS = Worksheets.Add(After:=Sheets(.Sheets.Count))
WS.Name = Name
End With
Set GetWorksheetFromName = WS
End Function
PS:this可能有帮助,但我仍然没有固定的我的代码
什么是不工作?对于我来说,使用GetWorksheetFromName(“ABC”):.Range(“A1”)= 123:End With'。首先传递它创建新的工作表,第二次传递它使用相同的工作表。 – Jeeped
代码有效,但是会抛出这个错误 – miguelmpn
你打算怎么调用它? –