之前的问题描述了如何使用
.Font.Highlight
的TextRange2
来突出显示所选文本。
如何删除突出显示?
特别是以下任一...
ActiveWindow.Selection.TextRange2.Font.Highlight.RGB = 0
或
ActiveWindow.Selection.TextRange2.Font.Highlight = 0
...导致黑色突出显示而不是不突出显示。
使用
False
或 msoFalse
代替零具有相同的效果。似乎没有布尔开关来打开或关闭突出显示(如 Word 中那样),并且找不到任何类型的支持文档。
在 PowerPoint 2019 和 365 中,可以使用 Application.CommandBars.ExecuteMso 方法来删除突出显示。看到这个问题:
感谢阿列克谢·马洛夫。
如果文本与突出显示选择器具有相同的突出显示颜色,我们只需运行 MSO 命令一次。 但是,如果所选文本的突出显示颜色与当前突出显示颜色不同,我们应该运行 MSO 命令两次。
Set tr = ActiveWindow.Selection.TextRange2
'Highlight once
CommandBars.ExecuteMso ("TextHighlightColorPickerLicensed")
'Select the textrange again
tr.Select
'finally, unhighlight the textrange
CommandBars.ExecuteMso ("TextHighlightColorPickerLicensed")
问题是我们无法识别当前ribbon上的高亮颜色。(也许有办法但不简单)
我的解决方法只是使用快捷键序列:
SendKeys "%(htcn)"
Alt-'h'、'tc' 和 'n'