Excel VBA:如何将选中单元格内的加粗文本批量转换为全大写
Excel选中区域加粗文本转大写/替换专属大写字体VBA解决方案
以下两段VBA代码仅处理选中区域内的加粗字符,不会统一修改单元格全部内容,可按需选择使用。
版本1:仅将加粗文本转为全大写
Sub 加粗文本转全大写() Dim rng As Range Dim char As Character ' 仅遍历选中的单元格区域 For Each rng In Selection If rng.HasFormula = False Then ' 跳过带公式的单元格避免运行报错 For Each char In rng.Characters ' 仅修改格式为加粗的字符 If char.Font.Bold = True Then char.Text = UCase(char.Text) End If Next char End If Next rng End Sub
版本2:转全大写+替换为专属大写字体
Sub 加粗文本转大写并替换字体() Dim rng As Range Dim char As Character ' 仅遍历选中的单元格区域 For Each rng In Selection If rng.HasFormula = False Then ' 跳过带公式的单元格避免运行报错 For Each char In rng.Characters ' 仅修改格式为加粗的字符 If char.Font.Bold = True Then char.Text = UCase(char.Text) ' 替换引号内的内容为你要使用的全大写字体的准确名称即可 char.Font.Name = "你的专属全大写字体名称" End If Next char End If Next rng End Sub
使用步骤
- 打开需要处理的Excel文件,按下
Alt + F11调出VBA编辑器 - 右键点击左侧工程栏中你的工作簿名称,依次选择「插入」→「模块」
- 将你需要使用的版本代码粘贴到右侧的代码编辑窗口
- 回到Excel表格界面,选中你需要处理的单元格区域
- 按下
Alt + F8调出宏运行窗口,选中对应宏名后点击「执行」即可
注意事项
- 处理前建议备份原文件,避免误操作导致内容丢失
- 如需调整字体,只需修改版本2代码中字体名称的对应字段,填写你系统中已安装的全大写字体的准确名称即可
- 代码默认跳过带公式的单元格,如有处理公式单元格的需求,删除代码中
If rng.HasFormula = False Then和对应的End If行即可
内容的提问来源于stack exchange,提问作者Zsolt Hidvegi
相关产品推荐
相关产品推荐

