
答案1
您擁有的一個選項是使用Excel 中的篩選選項,然後在B 列上按字母順序對它們進行排序。工作表(因為它們將全部分組)一起排序)。
或者,您需要編寫一個巨集來讀取每行的 B 列,並在內容為「Hot: Must Cover」時複製該行。
沿著這些思路:
Dim i as Integer
Dim j as Integer
i = 0
j = 0
Do While Cells(i, 2).value != ""
if Cells(i, 2).Value == "Hot: Must Cover" Then
Worksheets("Sheet1").Range(Cells(j, 0), Cells(j, 7).Value = Worksheets("Sheet1").Range(Cells(i, 0), Cells(i, 7).Value
j = j + 1
End if
i=i+1
loop
答案2
VLOOKUP
我認為用(或任何其他查找)來完成此操作是很困難的。考慮這個 VBA 解決方案:
Sub test
Dim ws1 As Worksheet, ws2 As Worksheet
Dim j As Integer
Set ws1 = Worksheets(1)
Set ws2 = Worksheets(2)
j = 1
For i = 2 To (ws1.Range("A1").ListObject.DataBodyRange.Count + 1)
If ws1.Range("B" & i).Value = "HOT: Must Cover" Then
ws1.Range("A" & i & ", G" & i).Copy
ws2.Range("A" & j).PasteSpecial xlPasteValues
j = j + 1
End If
Next i
End Sub