【发布时间】:2019-11-08 17:54:35
【问题描述】:
我正在尝试使用以下代码将字体样式从一个范围复制到另一个范围:
Range("A10").Font.FontStyle = Range("A11").Font.FontStyle
通常,它会从“A11”范围中提取“Bold”字体样式的名称,并使用它来设置“A10”范围的字体样式。
但是,由于我的 Excel 的语言设置为波兰语,而不是“粗体”,它会提取字体样式的波兰语名称(“Pogrubiony”)。因此,代码不起作用,因为 VBA 只接受英文名称(据我所知)。
我知道我可以这样做:
if Range("A11").Font.FontStyle = "Pogrubiony" Then Range("A10").Font.FontStyle = "Bold"
但我想知道 VBA 是否有办法自动将名称转换为英文,或者如果字体样式的名称是不同的语言,则可以识别它?
【问题讨论】:
-
如果您要检查的只是粗体,那么您可以选择使用
If Range("A10").Font.bold = True Then Range("A11").Font.bold = True,在VBA 中检查.bold属性而不是字体样式姓名。大多数格式选项都可以这样做。 -
除此之外,您可能正在使用谷歌翻译查看options like this。
-
@Plutian 我也想检查斜体样式,但这仍然是一个不错的解决方案。谢谢