此代碼嘗試刪除包含與陣列(列表)中的「文本」匹配的標題行的列。VBA數組刪除整列
代碼成功刪除基於第1個數組值「標題文本1」的列。
該問題發生在A.EntireColumn.Delete
的循環第二次通過期間。當我打印vItem
時,它顯示預期的「標題文本2」值,這是數組中正確的項目。
VBA錯誤 - 運行時錯誤「91」
對象變量或帶塊變量未設置
Sub ArrayLoop()
Dim ColumnsToRemove As Variant
Dim vItem As Variant
Dim A As Range
ColumnsToRemove = Array("Header Text 1", "Header Text 2", "Header Text 3")
For Each vItem In ColumnsToRemove
Set A = Rows(1).Find(What:=(ColumnsToRemove), LookIn:=xlValues, lookat:=xlPart)
Debug.Print vItem
A.EntireColumn.Delete
Next
End Sub
你需要搜索VITEM我覺得 –