答案1
您可以选择的一种方法是使用 Excel 中的过滤器选项,然后在 B 列上按字母顺序对它们进行排序。如果您确实需要将它们放在单独的工作表中,您可以做的是将它们复制粘贴到下一张工作表中(因为它们将根据排序全部分组在一起)。
或者,您需要编写一个宏,读取每行的 B 列,如果内容是“热门:必播”,则复制该行。
类似这样的内容:
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