Microsoft.Office.Interop.Word不规则表格操作注意事项

当在word里操作包含合并单元格的即不规则表格时,需要注意一些问题。

在使用DevExpress的RichEditControl控件时也是存在无法操作不规则表格,看样这是微软甩出的一个大包袱。

所以如果需要对表格做删除操作,最好基础表是一个规则表,哪怕删除后再通过合并操作重新整理。

例:

A

B

C

D

E

F

G

M

N

O

P

Q

R

S


1、根据书签选取表格时,尽量使用wordApp.Selection.Tables,也就是先GOTO书签位置,然后取选中区域的Table

2、删除列时,若同列上包含合并单元格,直接调用Column.Delete()则会报错。应使用

wordDoc.Range(table.Cell(1, vehicleNumber + 4 + 1).Range.Start, table.Cell(1, 12).Range.End).Select();
wordApp.Selection.Cells.Delete(Word.WdDeleteCells.wdDeleteCellsEntireColumn);
即删除单元格为目的,顺道删除该单元格所在列,若此单元格为合并单元格会删除多列。

如果此合并单元格与另外一个合并单元格所在列产生交叉呢?没试过!

4、注意Com对象数组下标都是从1开始的。

5、上表中选中

A单元格:table.Cell(1,1)

B单元格:table.Cell(1,2)

C单元格:table.Cell(1,3)

D单元格:table.Cell(2,2)

M单元格:table.Cell(3,1)

规则倒是简单,单元格所处的行数(包含它上面的所有行),列数是计算前面的列的。注意Cell(2,1)是不存在的

6、想在A行下新增一行,需要先选中D单元格,然后wordApp.Selection.InsertRowsBelow(1);

你可能感兴趣的:(WinForm)