我在Word(Office365)中编写了一些宏代码,将形状轮廓的颜色设置为主题颜色之一。对形状执行此操作的代码如下所示:
shape.line.foreColor.ObjectThemeColor = wdThemeColorAccent2
通过将“wdxx”颜色指定给
ObjectThemeColor
字段中,当文档颜色主题更改时,形状周围线条的颜色将自动更改。
我的问题(或第一个奇怪之处)是,当我使用上面的代码指定accent2,然后执行以下操作:选择形状、菜单、格式、形状轮廓,并将鼠标悬停在带有红色轮廓(标记活动线条颜色)的颜色框上时,工具提示会说“青绿色,强调文字颜色1”而不是“强调文字颜色2”。
我本以为
wdThemeColorAccent2
要调用的颜色
Accent 2
在工具提示中,但不是。
第二个问题是,显然我没有办法用宏代码指定菜单中显示的最后一种颜色。由于偏移(代码中的重音2=菜单中的重音1),我需要使用
wdThemeColorAccent7
在代码中指定菜单中显示的最后一种颜色(在工具提示中标记为强调文字颜色6)。
我想知道这是不是一个字里行间的错误(在我看来确实是这样),还是我做错了什么。为了重现这种情况,我创建了一个简单的空矩形,选中它,然后运行上面的代码行来更改形状的轮廓颜色。这里有一个小的子程序来说明这个问题(在运行子程序之前选择您的形状)。
Sub TestAccent()
Dim shp As Shape
Set shp = selection.ShapeRange(1)
shp.line.foreColor.ObjectThemeColor = wdThemeColorAccent4
shp.line.Weight = 0.5
shp.line.Visible = True
End Sub