我有一个表包含合并单元格一个Word文档里面。我想取消合并这些单元格使用win32com包。
这是一个示例,当ROW 1包含5个单元格,并且ROW 2包含6个单元格时。
理想情况下,我想在行1中取消合并的所有单元格,以使未合并的单元格与第2行对齐,从而使数据显示在所得未合并范围的最左侧单元格中。
实施例:
(合并)
+++++++++++++++++++++++++++++++++++++
|hi |bye | |Hello |none |
+++++++++++++++++++++++++++++++++++++
|1 |21 |23 |good |bye |3 |
+++++++++++++++++++++++++++++++++++++
(取消合并)
+++++++++++++++++++++++++++++++++++++
|hi |bye | |Hello| |none |
+++++++++++++++++++++++++++++++++++++
|1 |21 |23 |good |bye |3 |
+++++++++++++++++++++++++++++++++++++
与表合并细胞时,有一个总的是 cells。在未合并的表中有单元格。
关于如何做到这一点的任何想法。 win32com模块的文档相当稀少,而且在我工作时,似乎存在的很少的内容被阻止。
帮助将非常感激。
+++ ------------------------------------------- ------------------------------- +++
额外的细节:
我带来这样我的数据:
#Determins the number of tables in the Word Document and outputs a table
#element to "table"
num_tables = MT_doc.Tables.Count
table = MT_doc.Tables
012:
#Opens an instance of MS Word in the background, then accesses the referenced
#file.
path = "string containing directory name"
Word = win32.Dispatch("Word.Application")
Word.Visible = False
Word.Documents.Open(path)
#Creates a com element containing access to the document contents of the file referenced above
MT_doc = Word.ActiveDocument
然后我用下面的代码抢出来的文件表
我卡住的是:
table(1).Rows(1).Cells.Count != table(1).Rows(2).Cells.Count
在这种情况下,第一排有10个小区,而第二行有18个细胞。如果不能分割这些合并的单元格,我的其他代码将无法执行。