文章目录
- 1. 问题描述
- 2. 解决过程
- 1. 恢复 Office 默认设置 -- 无效
- 2. 重装 Office -- 无效
- 3. 修改 VBE 对应的注册表项 -- 成功
1. 问题描述
翻找excel的VBA编程环境VBE的设置,发现在“编辑器字体”tab页,可以设置编辑器字体。于是自己设置了一个字体,但是没看字体后的字符集,选到非中文的字符集了。导致文件中的中文注释全部变成乱码。
之后想改回来,发现设置切换到“编辑器格式”tab页面就会自动闪退。
2. 解决过程
1. 恢复 Office 默认设置 – 无效
首先尝试恢复 Office 默认设置。
使用 Office Tool Plus 进行操作。发文时版本为9.0.3.7
工具箱 --> 重置 Office 设置为默认设置
恢复之后,打开VBE,切换到字体设置的tab页,依旧闪退
2. 重装 Office – 无效
依然使用 Office Tool Plus 进行操作
-
卸载 Office
工具箱 --> 移除 Office
-
安装 Office
部署 --> 选择要安装的 Office 版本、语言、相关设置 --> 开始部署
需要操作的相关设置:- 产品
Microsoft 365 家庭和个人版
– 年费计划的 Office,旧名 Office 365,可享受 Office 最新的版本更新。个人版200左右,家庭版300-400一年可供6个人使用。Office 家庭和学生版 2019 / 2016
– 一般买电脑预装的 Office 属于这个版本。零售价200-300,一次付费终身享受,但是只有重大功能更新和安全更新批量许可证
– 可使用 KMS 进行激活的 Office 版本
- 应用程序:打钩的是安装的,个人建议没用的可以不装
- 必装三剑客 (咱用 office 99% 都是跟这仨打交道):
Word
、Excel
、Powerpoint
- 专业工具
Access
– 一款图形化的小型数据库 (可以快速建立小卖部零售系统等小型数据库,SQL 语法比较诡异,免费打不过 MySQL/Postgres,付费打不过 SQL Server/Oracle,优势是买高级版本的 Office 直接包含)Publisher
– 排版软件。类似 Indesign,但是功能渣渣。Onenote
– 笔记软件,功能强,配合 Onedrive 可实现全平台笔记,还能插 Office 里的对象。但这里安装的是 Office 版的,卸载不方便、版本也不够新,有需求建议上微软商店下 UWP 版的 Onenote
- 其他各种附件
groove
– 企业协同软件Lync
– 聊天软件Teams
– 新推出的企业协同软件
- 必装三剑客 (咱用 office 99% 都是跟这仨打交道):
- 部署设置
体系架构
– 选择要安装的 Office 版本为多少 –32位
或64位
。
注意:Office 46 位的版本不兼容 32 位版本的插件,装 64 位软件,要保证自己用的插件都能兼容 64 位才行;32 位软件日常使用没有问题,但在处理大表 (40M+) 的时候,可能会因为分配的内存不足导致及其卡顿部署模式
安装
– 下载后直接在本机安装下载
– 只下载不安装,下次安装还要开这个软件来安装创建
ISO 镜像 – 将下载的软件和 Office Tool Plus 一起打包进一个镜像文件,用这个镜像文件就能在别的电脑安装对应版本的 Office
- 建议勾选
下载后再部署
。避免网络问题造成的安装失败。 - 可勾选
创建桌面快捷方式
- 下载设置
- 建议勾选
下载后校验 Office 安装文件
。避免因下载错误导致的安装失败
- 建议勾选
- 其他有用的页面
激活页面
- 输入秘钥激活:秘钥管理
- 批量许可证 KMS 激活:KMS管理,输入KMS服务器地址
- 产品
-
安装结果:无效,打开VBA编辑器界面,中文依旧乱码,设置字体界面依旧闪退
-
分析:VBA 的设置与 Office 设置是相互独立的,应该找到 VBA 的设置
3. 修改 VBE 对应的注册表项 – 成功
注册表类似户口本,详细记载电脑(城市)中各个软件(人)的配置信息(户籍信息)。因此注册表十分敏感,在搞不懂相关配置的情况下,操作注册表千万要慎重:
- 如果不小心修改了注册表的设置,可能导致软件甚至系统无法运行 (如随意修改户籍信息,导致自己的名字和户籍信息上的对不上,出去办事都办不了)
- 如果不小心删除了注册表项,可能导致软件无法运行 (直接把某人的户籍销掉了,某人直接变成黑户)。当然,有一些软件卸载时没有清理对应的注册表项(有可能是卸载软件出错了或者卸载软件设计的问题),下次再安装就可能装不上了(点名一大堆工业软件都是出了名的难卸载)
查找资料,找到了 VBA 注册表中关于编辑器字体设置
的注册表项
原文地址:https://social.msdn.microsoft.com/Forums/en-US/77eaa349-8d68-4ae7-a08f-733db33a759b/vbe-font-settings?forum=isvvba
实际根据版本不同,注册表项地址中的6.0
可能是7.0
或7.1
,但只有其中一个地址中有FontFace
这个选项
双击FontFace
,修改为一个已经安装在电脑里的、能正常显示中文的字体。也可以恢复为默认字体Courier New
最后重开 Excel 的 VBA 编辑界面 – VBE。我的代码回来了!字体设置也能打开不闪退了。
PS:此注册表地址中,还有两项值得注意
字符集FontCharSet
实际上就是设置界面中的西欧、土耳其
等区域字符集设置。
设定值参考资料:http://www.cppfans.com/cbknowledge/reference/vcl.graphics/tfontcharset.asp