|
* 楼主,下面代码在满足几个条件后,可以手动执行,效率虽然不高,但尚可解一时之难:
* 条件:1、将光标放在表格中,如果不是规则表格,请将光标放在某个行中,按 F3 可拆分表格,使其变为规则表格(一个表格变为两个,上面的是不规则的,下面的是规则的),将光标放在规则表格中,按 F4 可自动删除第一列为空的空白表格行。2、表格第一列中应该无空格,如果有空格,请全部删除后再重复第一步。
* 使用方法:打开 Word,按 Alt + F8 观察宏名列表中有无宏。如果无宏名(一片空白),则请录制一个宏后,重新按 Alt + F8 找到此宏,点击“编辑”,进入 VBE 后,复制下面的代码到最后面,执行 a___Hotkey 后,关闭 VBE,把光标放在表格中,按 F3 拆分表格,F4 删除表格空行。
- Sub a___Hotkey()
- KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyF3), KeyCategory:=wdKeyCategoryMacro, Command:="a___iSplitTable"
- KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyF4), KeyCategory:=wdKeyCategoryMacro, Command:="a___iDeleteBlankRows_When_FirstCellEmpty"
- MsgBox "F3: SplitTable F4: DeleteBlankRows", 0 + 48
- End Sub
- Sub a___iSplitTable()
- Selection.SplitTable
- End Sub
- Sub a___iDeleteBlankRows_When_FirstCellEmpty()
- Dim r As Row
- For Each r In Selection.Tables(1).Rows
- If Len(r.Cells(1).Range) = 2 Then r.Delete
- Next
- End Sub
复制代码 |
|