You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何批量修改电子表格中所有条件格式的字体?

如何批量修改电子表格中所有条件格式的字体?

太懂你这种面对一堆条件格式要手动改字体的崩溃感了!别着急,我给你分Excel和Google Sheets两种常用场景,说点实用的批量修改方法:

Excel 批量更新方法

方法一:利用样式管理器批量同步

  • 先创建一个自定义样式:设置好你想要的字体类型、大小、颜色等所有格式,保存成新样式
  • 点击「开始」选项卡,找到「样式」组,点击右下角的小箭头打开样式管理器
  • 在管理器里找到所有关联了条件格式的样式(可以直接筛选“条件格式”类别),选中你要更新的所有目标样式
  • 右键点击选中的样式→「修改」,在弹出的窗口里直接选择刚才创建好的新样式,确认后所有选中的条件格式就会同步新字体了

方法二:VBA脚本一键搞定(适合超级多条件格式的情况)

如果你的条件格式数量特别多,用脚本效率更高:

  • 按下 Alt + F11 打开VBA编辑器
  • 右键点击左侧的工作簿名称→「插入」→「模块」,新建一个空白模块
  • 把下面这段代码粘贴进去,记得把代码里的字体参数改成你需要的(比如"Arial"换成目标字体,12换成对应字号)
Sub UpdateAllConditionalFormatFonts()
    Dim ws As Worksheet
    Dim cf As FormatCondition
    For Each ws In ThisWorkbook.Worksheets
        For Each cf In ws.Cells.FormatConditions
            With cf.Font
                .Name = "Arial"  '替换成你的目标字体名称
                .Size = 12       '替换成目标字号
                .Bold = False    '按需设置是否粗体,True为粗体
                .ColorIndex = 1  '按需设置字体颜色,1代表黑色,可换其他索引值
            End With
        Next cf
    Next ws
    MsgBox "所有条件格式字体已更新!", vbInformation
End Sub
  • 按下 F5 运行脚本,等弹出提示框就大功告成啦

Google Sheets 批量更新方法

Google Sheets没有样式管理器,用Apps脚本就能搞定:

  • 打开你的表格,点击「扩展程序」→「Apps 脚本」
  • 删掉默认的代码,粘贴下面这段脚本,同样修改字体参数(比如"Roboto"换成你要的字体)
function updateConditionalFormatFonts() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheets = ss.getSheets();
  
  sheets.forEach(sheet => {
    const rules = sheet.getConditionalFormatRules();
    rules.forEach(rule => {
      const format = rule.getBooleanCondition().getFormat();
      format.setFontFamily("Roboto")  //替换成目标字体名称
             .setFontSize(12);        //替换成目标字号
      rule.setBooleanCondition(rule.getBooleanCondition().getType(), rule.getBooleanCondition().getValues(), format);
    });
    sheet.setConditionalFormatRules(rules);
  });
  
  SpreadsheetApp.getUi().alert("所有条件格式字体已更新完成!");
}
  • 点击「运行」,第一次运行需要授权,按照页面提示完成授权后,脚本会自动遍历所有工作表的条件格式并更新字体

备注:内容来源于stack exchange,提问作者latitude

火山引擎 最新活动