我正在使用Word 2007对象模型来操作表。每当我读取Shading
对象的Borders
或ConditionalStyle
属性作为表的样式(使用VBA或C#)时,它会将表的应用条件样式重置为Header Row,Banded Rows和第一列,它清除所有表级格式(边框和阴影)。
无论是通过表格ConditionalStyle
属性还是通过文档的Style
集合访问Style
,都会发生这种情况。
要重现此问题,请创建一个Word 2007文档,其中包含应用了某些格式(边框或阴影)的表,选择表的任何部分,然后在VBA的立即窗口中运行以下代码:
print Selection.Tables(1).Style.Table.Condition(1).Shading.BackgroundPatternColor
该表格将按上述方式重置。
其他人可以在他们的环境中重现这个问题吗? (我使用Word 2007 SP1和SP2在Windows 7和Windows Server 2003中重现了它)
任何人都可以猜到为什么会这样吗?
任何人都可以找到解决方法来阅读着色吗?
答案 0 :(得分:0)
我通过在检查ConditionalStyle
之前选择表格外部的文档的一部分来解决这个问题。只有当选择在表格内时才会出现错误。
但我仍然不知道为什么会发生这种情况。