如何修改Outlook 2016默认字体?VBS脚本报错求助
如何将非365版Microsoft Office的默认Arial字体改为Montserrat?
我尝试用VBScript修改,但双击运行.vbs文件时出错,错误截图如下:
我编写的脚本如下:
Sub ChangeFont() Dim objOLApp As Outlook.Application Dim NewTask As Outlook.TaskItem Set objOLApp = New Outlook.Application Set NewTask = objOLApp.CreateItem(0) with Newtask .DefaultFont = "Montserrat" End With On Error Resume Next END Sub WScript.Echo "Done!" pause exit
我查过相关资料,有人建议用PowerShell运行,但不知道具体操作方法。
问题分析与解决步骤
你的脚本存在几个核心问题:
- VBScript不支持VBA的
Sub/End Sub语法,也不能用As声明变量类型 - 脚本仅修改了临时创建的单个任务项字体,而非Office全局默认设置
pause和exit不是VBScript的合法命令
Office各组件(Word/Excel/Outlook等)的默认字体设置相互独立,需要分别处理,以下是对应PowerShell解决方案:
1. 修改Word默认字体
右键以管理员身份打开PowerShell,执行:
$word = New-Object -ComObject Word.Application $normalTemplate = $word.NormalTemplate $defaultFont = $normalTemplate.Styles.Item("Normal").Font $defaultFont.Name = "Montserrat" $normalTemplate.Save() $word.Quit()
2. 修改Outlook邮件默认字体
同样以管理员身份运行PowerShell,执行:
$outlook = New-Object -ComObject Outlook.Application $mailItem = $outlook.CreateItem(0) $inspector = $mailItem.GetInspector $wordEditor = $inspector.WordEditor $defaultStyle = $wordEditor.Styles.Item("Normal") $defaultStyle.Font.Name = "Montserrat" $mailItem.Close(1) $outlook.Quit()
3. 修改Excel默认字体
管理员权限下执行PowerShell命令:
$excel = New-Object -ComObject Excel.Application $workbook = $excel.Workbooks.Add() $excel.DefaultFont.Name = "Montserrat" $excel.SaveSettings() $workbook.Close($false) $excel.Quit()
注意事项
- 运行前关闭所有对应Office程序,避免进程冲突
- 确保系统已安装Montserrat字体
- PowerShell需以管理员身份运行,否则可能无法保存模板设置
内容的提问来源于stack exchange,提问作者Hallow_Worlds
相关产品推荐
相关产品推荐

