有如下过程
Private Sub Command1_Click()
Dim wa, mydoc As Object
Set wa = CreateObject("word.application")
wa.Visible = True
Set mydoc = wa.Documents.Add '启动word,生成文档
mydoc.tables.Add range:=wa.selection.range, NumRows:=5, NumColumns:=11, DefaultTableBehavior:=1, AutoFitBehavior:=0
mydoc.range(mydoc.tables(1).cell(2, 1).range.start, mydoc.tables(1).cell(3, 1).range.End).cells.merge
End Sub
这里的问题是,想要将表格中第二行,第一列及第三行,第一列的表格进行合并,总是要出错,提示,集合中的元素不存在,我猜是不是指第二行,第一列或第三行,第一列的表格不存在?但是明明生成了一个5行11列的表格的。奇怪的事情是:如果将上面合并表格那一行的代码中的列号,改成其他的列号,如2,3,4,等等,都可以,就是第一列不行,其他的都行,
即:
mydoc.range(mydoc.tables(1).cell(2, 2).range.start, mydoc.tables(1).cell(3, 2).range.End).cells.merge都可以,就是1 不行,很奇怪,望高手指教。
Private Sub Command1_Click()
Dim wa, mydoc As Object
Set wa = CreateObject("word.application")
wa.Visible = True
Set mydoc = wa.Documents.Add '启动word,生成文档
mydoc.tables.Add range:=wa.selection.range, NumRows:=5, NumColumns:=11, DefaultTableBehavior:=1, AutoFitBehavior:=0
mydoc.range(mydoc.tables(1).cell(2, 1).range.start, mydoc.tables(1).cell(3, 1).range.End).cells.merge
End Sub
这里的问题是,想要将表格中第二行,第一列及第三行,第一列的表格进行合并,总是要出错,提示,集合中的元素不存在,我猜是不是指第二行,第一列或第三行,第一列的表格不存在?但是明明生成了一个5行11列的表格的。奇怪的事情是:如果将上面合并表格那一行的代码中的列号,改成其他的列号,如2,3,4,等等,都可以,就是第一列不行,其他的都行,
即:
mydoc.range(mydoc.tables(1).cell(2, 2).range.start, mydoc.tables(1).cell(3, 2).range.End).cells.merge都可以,就是1 不行,很奇怪,望高手指教。
换一种合并方式(以下已经测试成功VBA):
Tables(1).Cell(2, 1).Merge Tables(1).Cell(3, 1)
--------------------------------------------------mydoc.Tables(1).Cell(2, 1).Merge mydoc.Tables(1).Cell(3, 1)