我需要從 Excel 電子表格中提取一行資料並將其傳輸到另一張表格。我需要搜尋一系列破折號 (- - - - -),然後提取破折號下方 2 行的資料行。
答案1
Excel 尋找 尋找語法
Dim rFound 作為範圍
其中「表達式」是任何有效的範圍對象,例如範圍(“A1:A100”),列(2)等。
表達式.Find(什麼、之後、LookIn、LookAt、SearchOrder、SearchDirection、MatchCase、MatchByte、SearchFormat)
Dim rFound 作為錯誤範圍恢復下一步
With ActiveWorkbook.ActiveSheet
Set rFound = .Columns(1).Find(What:="- - - - -", After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
On Error GoTo 0
If Not rFound Is Nothing Then
Match = rFound.Address
MsgBox (rFound.Offset(2, 0))
End If
End With
答案2
我會為此使用 Power Query 插件。它可以從 Excel 表格中讀取資料。
我會建立 2 個查詢。第一個將會新增一個索引列(行號),然後過濾帶有破折號的行。然後,我將新增一個簡單的計算列:[Index] + 2。
第二個查詢將從基底表開始,然後使用「[Index] + 2」列和內部連接類型與第一個查詢合併(僅保留匹配)。此查詢會將一個新表輸出到 Excel 中。
您只需在 Power Query UI 中點擊即可建立幾乎所有這些內容。所需的一個公式非常簡單:[Index] + 2
。