TextFrame.Characters.Font.Name不会更改excel形状中的中文charatcers的字体

时间:2014-04-08 04:32:44

标签: excel vba excel-vba

标题几乎可以说明一切。

我的代码如下:

sh.TextFrame.Characters.Font.Name = "SimSun"

此代码仅更改所有英文和单字节符号的字体。

所有双字节符号和中文字符都保持默认字体。

我也尝试了TextFrame2,结果相同。

我在excel 2007上。

任何可以提供帮助的人?谢谢。

1 个答案:

答案 0 :(得分:2)

我在日语中发现了一篇Microsoft帮助台文章,解释了这个问题。

Excel将1字节英文字符和2字节中文/日文字符的字体名称划分为vba中的不同模块。

解决方案如下。

sh.TextFrame2.TextRange.Font.NameFarEast = "SimSun"
sh.TextFrame2.TextRange.Characters.Font.Name = "SimSun"

第一行更改形状文本框中所有2字节字符的字体,第二行更改所有单字节字母的字体。

远东......哇