vba - vba中非英语语言的字体大小不会改变
问题描述
我正在尝试使用 vba 从 excel 中收集文本并将其放入 word 文档中。
使用以下脚本,我得到的样式只影响英文字母,但希伯来文的字母不跟随。
Sub WriteToWord()
Dim wordApp As Object
Dim mydoc As Object
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
wordApp.Activate
Set mydoc = wordApp.Documents.Add()
With wordApp.Selection
.Font.Size = 18
.Font.Bold = True
.TypeText ("a")
.TypeText ("חדש")
End With
End Sub
解决方案
我试图复制你最后的希伯来语字符串,但对我来说,它没有正确编码,因为它只是"???"
在编辑器和 Word 文档中显示(注意我在瑞典计算机上,所以它可能仍会为您显示正确的字符=。
VBA 编辑器似乎只支持 Windows-1252 编码(https://stackoverflow.com/a/23678551/4663244),所以我很好奇您如何使用这些字符 :)
这是关于如何在 VBA 脚本中使用 Unicode 字符的相关问题:declaring a unicode string in vba in excel
无论如何,如果我使用该函数ChrW
编写 unicode 字符,我就可以正常工作(顺便说一句,我不确定我使用了正确的字符,所以请检查一下):
Sub WriteToWord()
Dim wordApp As Object
Dim mydoc As Object
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
wordApp.Activate
Set mydoc = wordApp.Documents.Add()
With wordApp.Selection
.Font.Size = 18
.Font.Bold = True
.TypeText ("a")
.TypeText (ChrW(1495) + ChrW(1491) + ChrW(1513))
End With
End Sub
推荐阅读
- python - 这个行插入有什么问题?
- javascript - Chart.js 工具提示是否不适用于对数或笛卡尔时间轴?
- litedb - 更新 LiteDB 中的整个文档
- ruby - 坚固的 gem 无法构建原生扩展
- javascript - 如果 PUT 同时具有凭据“包含”和 Content-Type,则出现 CORS 错误
- reactjs - 语法错误:运行 npm start 时 React 中出现意外的令牌
- javascript - 如何使用 JavaScript 从脚本标签中选择声明的变量
- ruby-on-rails - Webpacker 未正确插入环境以获取环境的正确配置文件
- sql-server - SQL Server 查询结果按总计排序
- c# - 如何将代理与 Flurl 或 HttpClient 一起使用?