VBA通过字体名称而不是字体索引来更改Visio字体样式?

时间:2018-11-09 14:28:31

标签: vba visio visio-vba

我希望使用VBA更改形状中的文本的字体样式(从Calibri到Verdana)。目前,我(有一段代码)

Visio.ActivePage.Shapes(1).Characters.CharProps(visCharacterFont) = 235# 

235是我系统中Verdana的字体索引。但是,字体索引非常不稳定,并且可以在不同的计算机上更改。有没有一种方法可以通过字体名称来更改字体样式,例如... =“ Verdana”?在Excel中是可能的,但是在Visio中找不到类似的语法。预先感谢!

1 个答案:

答案 0 :(得分:2)

您可以检查当前PC上Verdana字体的 ID 是什么

Dim Verdana_ID As Integer
Verdana_ID = ActiveDocument.Fonts.Item("Verdana").ID

在此步骤之后,将此 ID 设置为字符的字体

Visio.ActivePage.Shapes(1).Characters.CharProps(visCharacterFont) = Verdana_ID