我在Excel中有一个工作表,其中有很多行带有值。对于此工作表中的每一行,Excel必须检查其内容是否与另一个表的字符串的任何相匹配。如果它匹配一个或多个,则必须删除该行。
示例:
Table 1 (delete criteria):
SP
MG
AC
SP
RR
Table 2 (table with content to be deleted):
special
São Paulo, SP
roraima
macapá
因此,对于表2的每一行,我必须检查表1中是否包含 any 字符串。此外,匹配项必须区分大小写,并且可以在表2的任何位置进行。 ,不会删除带有“ special”的行,但是带有“SãoPaulo,SP”的行将被删除。
excel公式应该如何做?这两个表在同一张纸上,但是如果可以简化的话,我可以对其进行更改。
更新:我注意到Excel不会删除行,为此我需要一个脚本。在这种情况下,它可以以某种方式标记行或更改格式。表示该行为“匹配”的任何内容。
答案 0 :(得分:0)
对于这个问题,我使用Sheet1:
尝试:
Option Explicit
Sub test()
Dim LR As Long, i As Long, j As Long, Result As Long
Dim Value1 As String, Value2 As String
With ThisWorkbook.Worksheets("Sheet1")
For i = 12 To 9 Step -1
Value2 = .Range("A" & i).Value
For j = 2 To 6
Value1 = .Range("A" & j).Value
Result = InStr(1, Value2, Value1)
If Result > 1 Then
.Rows(i).Delete
Exit For
End If
Next j
Next i
End With
End Sub