簡體   English   中英

VBA從一個Excel搜索到另一個Excel並顯示單元格地址

[英]VBA to search from one excel to another excel and display cell address

我有兩個Excel文件。 我正在使用唯一的電子郵件ID在另一個文件中搜索數據。 我從一個Excel文件中一個接一個地獲取電子郵件ID,然后在另一個Excel文件中搜索。 一旦找到數據,我想要單元地址。 我在“ MsgBox cell.Address”代碼上收到“對象變量或未設置塊變量”的錯誤。 請協助

Dim myFileNameDir As String
Dim myFileNameDir2 As String
Dim ws As Worksheet
Dim ws2 As Worksheet
Dim emailID As String
Dim cell As Range
Dim II As Integer
Dim III As Integer

myFileNameDir2 = TextBox2.Value
Workbooks.Open Filename:=myFileNameDir2, UpdateLinks:=0
Set ws2 = Worksheets(1)

myFileNameDir = TextBox1.Value
Workbooks.Open Filename:=myFileNameDir, ReadOnly:=True, UpdateLinks:=0
Set ws = Worksheets(1)


II = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row

For III = 2 To II
emailID = ws2.Cells(III, "D").Value

Set cell = ws.Range("AA2:AA1048576").find(emailID, LookAt:=xlWhole)
MsgBox cell.Address

Next III

在這種情況下,最有可能出現錯誤,因為Find方法沒有找到匹配項,因此沒有任何返回值。 從VBA使用Find方法可能很棘手,尤其是在查看xlWhole時。 您確定另一張紙上有匹配的值嗎? 您確定比賽正確嗎? 等等,即使合並的單元格也可以拋出Find方法。

通常,使用工作表函數會使速度變慢,但是在這種情況下,最好使用MATCH函數查找匹配的行,然后將該值返回到單元格地址中。

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM