现在我在Word文档中有一个非常长的表,我从Excel工作表中填充了该表。它有6列,我试图在Word VBA中编写一些代码,它将遍历表中的所有行,如果第一列中的单元格没有以等号开头,则删除整行 {{1 }} 即可。
例如,我只是想保留包含文本的行
("=")
我将如何编码?我不能给代码任何特定的代码,因为等号后的部分对于每一行都是不同的。
所以这不起作用,对吧?:
"=1+S -03F7", "=1+M -06M1", etc. etc.
我想我应该引用第1列中的单元格,而不是列本身...而且,它不起作用,因为它只是寻找具有等号的东西...而且我不知道我是怎么做的如果它找到没有等号的单元格,可以让它选择行。我不知道如何在第一列的单元格中按案例进行匹配。
答案 0 :(得分:2)
您可以使用Rows属性遍历表中的行。然后,您可以使用Cells属性在该行中找到第一个单元格。然后,您可以只检查范围的第一个字符:
Sub DeleteUnwantedRows()
Dim t As Table
Dim r As Row
Set t = ActiveDocument.Tables(1)
For Each r In t.Rows
If r.Cells(1).Range.Characters(1) <> "=" Then r.Delete
Next r
End Sub