[英]Runtime error 91 vba
我有這個想法-在一個文件中,我設置了要搜索的名稱和文件,並希望VBA打開該文件,遍歷所有工作表,找到我搜索的值,並在同一行返回一些值。 首先,我只找到一種僅在一列中搜索的方法,但是在我的文件中,該值可能在5-6列中。 有誰知道如何在孔工作表中搜索? 另外,我有一個簡單的解決方案(我搜索的數據始終在D,F,H,J ...列中),我將檢查最壞的情況並進行總體迭代,除非找到它,返回我的信息,關閉文件並關閉宏。 到目前為止,這是我的代碼:
Sub BTS()
Dim RowID As Integer
Dim SiteID As String
Dim objFindSiteID As Range
Dim objControllerData As Workbook
Dim WS As Worksheet
Dim lastRow As Long
Dim v As Range
SiteID = ThisWorkbook.Sheets("Sheet1").Range("A3").Value
If ThisWorkbook.Sheets("Sheet1").Range("B3").Value = "someValue" Then
Set objControllerData = Workbooks.Open("C:\Users\bla\bababa\bla.xls", True, True)
End If
For Each WS In objControllerData.Worksheets
lastRow = WS.Cells(WS.Rows.Count, "B").End(xlUp).Row
For I = 1 To lastRow
v = WS.Range("D" & I).Value
If v = SiteID Then
RowID = v.Row
MsgBox lastRow
MsgBox RowID
End If
Next I
Next WS
End Sub
我幾乎完成了該任務,但是有一個問題-運行時錯誤91。我已經管理了錯誤424、1004,但是很難找到發生此問題的原因:/
刪除Dim v As Range
,您給他一個值,而不是范圍。
或者,保持范圍,並在等號行的末尾刪除.Value
。 然后將值獲取到另一個原語,例如myValue = v.Value
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.