基本上,我想要完成的是:删除表中从光标所在位置到表末尾的所有行。
问题是这个表包含垂直合并的单元格,所以当我尝试做这样的事情时:
For i = Selection.Tables(1).Rows.Count To Selection.Cells(1).RowIndex Step -1
Selection.Tables(1).Rows(i).Delete
Next
它提示无法访问单个行,因为该表包含垂直合并的单元格。
我也试过先选择范围,然后删除选择。但我无法正确定义范围;它总是提示有一个不正确定义的参数。
最佳答案
使用 VBA 合并表格单元格不是很麻烦吗? Word 似乎对列数和行数感到困惑。对于水平或垂直合并单元格的任何组合,以下内容似乎非常强大。
Sub DeleteRows()
Selection.MoveDown Unit:=wdLine, Count:=(Selection.Tables(1).Rows.Count - Selection.Cells(1).RowIndex), Extend:=wdExtend
Selection.Rows.Delete
End Sub
关于vba - 从具有合并单元格的表格中删除范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13818541/