我在Word中有一个表,我需要使用VBA将某些行移动到表的底部。
我知道我可以通过剪切和粘贴(myTable.Rows(2).Select ... Selection.Cut ... etc.
)来做到这一点,但我不想使用剪贴板。
虽然我可以手动突出显示行并使用鼠标拖动它,但是当我录制宏时,不允许拖动,并且似乎没有任何明显的菜单指令来执行等效操作。
我能想到的另一件事是(使用VBA):
对此的“性感”解决方案必须在那里;)
答案 0 :(得分:1)
以下是您可以探索的两件事:
使用FormattedText:
Sub moverow4table1toend()
Dim source As Word.Range
Dim target As Word.Range
Dim t As Word.Table
Set t = ActiveDocument.Tables(1)
Set target = t.Range
target.Collapse wdCollapseEnd
Set source = t.Rows(4).Range
target.FormattedText = source.FormattedText
source.Rows(1).Delete
Set source = Nothing
Set target = Nothing
Set t = Nothing
End Sub
或许如果你实际上做的更像是排序,你可以添加一个列(假设你没有达到限制,用目标行号填充它,对表进行排序,并删除列。