我正在尝试遍历Word文档中的每个表并更改列宽。我找到了一个宏来执行此操作,但它不起作用,因为每个表中的第一行都已合并。
由于我知道第二行及以后没有合并,我试图更改宏以跳过第一行。
这是我的第一次尝试:
Sub MyAttempt()
Dim t As Table
For Each t In ActiveDocument.Tables
For Each Row In t
If Row.Index > 1 Then
t.Columns(1).Width = InchesToPoints(1.2)
t.Columns(2).Width = InchesToPoints(13)
End If
Next
Next t
End Sub
我已经将该代码清理为下面的代码,但它仍然给我一个错误,它无法更改任何单元格宽度,因为表中有一个合并的单元格。
Sub MyAttempt2()
Dim t As Table
For Each t In ActiveDocument.Tables
For Each r In t.Rows
If r.Index > 1 Then
t.Columns(1).Width = InchesToPoints(1.2)
t.Columns(2).Width = InchesToPoints(13)
End If
Next r
Next t
End Sub
有没有办法跳过已经合并单元格的第一行,然后更改表格其余部分的单元格宽度,对文档中的每个表都这样做?
感谢任何人提供的任何帮助。真的很感激!
答案 0 :(得分:0)
尝试:
Sub MyAttempt2()
Dim t As Table, r As Row
For Each t In ActiveDocument.Tables
For Each r In t.Rows
If r.Index > 1 Then
r.Cells(1).Width = InchesToPoints(1.2)
r.Cells(2).Width = InchesToPoints(3)
End If
Next r
Next t
End Sub