从word文档中删除第一个单元格文本不匹配的所有表

时间:2016-09-01 07:41:58

标签: vba word-vba

我有一个包含许多表格的word文档。我想删除所有第一个单元格与指定文本不匹配的表格,为此我必须遵循VBA脚本。 但If条件似乎不起作用,它继续为所有表返回true,即使Debug.Print显示不同的名称。

Sub EWT()
    Dim t As Table
    For Each t In ActiveDocument.Tables
        t.Style = "Table Grid"

        'If t.Cell(1, 1).Range.Text <> "Field Name" Then
        If Not t.Cell(1, 1).Range.Text = "Field Name" Then
            't.Delete
            Debug.Print t.Cell(1, 1).Range.Text
        End If
    Next
End Sub

Debug.Print的一个块:

Field Name

PRIMARY KEY NAME

Field Name

PRIMARY KEY NAME

Field Name

Field Name

Field Name

PRIMARY KEY NAME

Field Name

PRIMARY KEY NAME

Field Name

PRIMARY KEY NAME

Field Name

PRIMARY KEY NAME

1 个答案:

答案 0 :(得分:0)

这是因为所有单元都以Chr(13) & Chr(7)结尾。 (线索将是调试窗口中的空行)。如果你测试"Field Name" & Chr(13) & Chr(7)它应该有效。

如果您不想记住这些字符,您还可以测试字符串的左侧部分:Left(cellContent, Len(cellContent) - 2) = "Field Name"