如何使用 Excel 宏 VBA 在 Excel sheet 中查找行?
How to find a row in an Excel sheet using Excel Macro VBA?
我现在的代码是:
Set RecT = gConnect.Execute("SELECT [Volume] FROM [Output$] WHERE ((([Facilities])=""IDK"") AND (([Detail_1])=""BPL"" Or ([Detail_1])=""SI"")) ORDER BY [Detail_1];")
Worksheets("Results").Cells(52, 4).CopyFromRecordset RecT
首先,使用 Set Rect
我在另一个 sheet 中寻找我想要的值,然后我将它复制到我的 sheet [=] 的第 52 行的第 4 列中26=](图中那个)。但是我不想给它确切的索引,而是希望它找到那个单元格。
正如您在照片中看到的,我必须找到 A 列 = traitement、B 列 = IDK 和 C 列 = BPL 的行。
我查了一下,发现我必须使用 Cells.Find
,但我不明白该怎么做!
像这样应该可以解决问题:
Dim v As Variant
Dim i As Long
Dim compteur As Long
Dim lineFound As Boolean
'Load range contents to array
v = Range("A1:C7").Value 'Or wherever your data is
'Iterate through array until desired content found
For i = 1 To UBound(v, 1)
If v(i, 1) = "traitement" And v(i, 2) = "IDK" And v(i, 3) = "BPL" Then
compteur = i
lineFound = True
Exit For
End If
Next i
'Report
If lineFound Then
MsgBox "The thing you want is on line " & compteur
Else
MsgBox "Didn't find the thing you want."
End If
我现在的代码是:
Set RecT = gConnect.Execute("SELECT [Volume] FROM [Output$] WHERE ((([Facilities])=""IDK"") AND (([Detail_1])=""BPL"" Or ([Detail_1])=""SI"")) ORDER BY [Detail_1];")
Worksheets("Results").Cells(52, 4).CopyFromRecordset RecT
首先,使用 Set Rect
我在另一个 sheet 中寻找我想要的值,然后我将它复制到我的 sheet [=] 的第 52 行的第 4 列中26=](图中那个)。但是我不想给它确切的索引,而是希望它找到那个单元格。
正如您在照片中看到的,我必须找到 A 列 = traitement、B 列 = IDK 和 C 列 = BPL 的行。
我查了一下,发现我必须使用 Cells.Find
,但我不明白该怎么做!
像这样应该可以解决问题:
Dim v As Variant
Dim i As Long
Dim compteur As Long
Dim lineFound As Boolean
'Load range contents to array
v = Range("A1:C7").Value 'Or wherever your data is
'Iterate through array until desired content found
For i = 1 To UBound(v, 1)
If v(i, 1) = "traitement" And v(i, 2) = "IDK" And v(i, 3) = "BPL" Then
compteur = i
lineFound = True
Exit For
End If
Next i
'Report
If lineFound Then
MsgBox "The thing you want is on line " & compteur
Else
MsgBox "Didn't find the thing you want."
End If