You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Excel带条件格式的单元格颜色从一个工作表复制到另一个?

把Sheet1条件格式颜色同步到Sheet2的解决方案

因为条件格式的颜色属于单元格的显示格式,不是直接的内部填充色,所以你之前用.Interior.Color读取不到正确颜色,可通过以下方法实现:

方法一:VBA宏(最高效)

使用DisplayFormat.Color读取Sheet1单元格实际显示的颜色,再赋值给Sheet2对应单元格的内部填充色,代码如下:

Sub SyncConditionalFormatColors()
    Dim srcSheet As Worksheet, tgtSheet As Worksheet
    Dim srcRange As Range, tgtRange As Range
    Dim rowNum As Integer, colNum As Integer
    
    ' 指定源表和目标表
    Set srcSheet = ThisWorkbook.Sheets("Sheet1")
    Set tgtSheet = ThisWorkbook.Sheets("Sheet2")
    
    ' 指定要同步的区域
    Set srcRange = srcSheet.Range("C6:M78")
    Set tgtRange = tgtSheet.Range("C6:M78")
    
    ' 遍历每个单元格同步颜色
    For rowNum = 1 To srcRange.Rows.Count
        For colNum = 1 To srcRange.Columns.Count
            tgtRange.Cells(rowNum, colNum).Interior.Color = srcRange.Cells(rowNum, colNum).DisplayFormat.Color
        Next colNum
    Next rowNum
End Sub

操作步骤:

  1. 按Alt + F11打开VBA编辑器
  2. 右键点击左侧工作簿名称 → 插入 → 模块
  3. 粘贴代码到模块窗口
  4. 按F5运行宏,或者回到Excel界面,通过「开发工具」→「宏」选择运行

方法二:手动操作(无需代码)

先把Sheet1的条件格式颜色转为实际填充色,再复制到Sheet2:

  • 选中Sheet1的C6:M78区域,按Ctrl + C复制
  • 新建一个空白工作表,右键点击A1单元格 → 选择性粘贴 → 选择「值和格式」,此时空白表的单元格会保留显示颜色(无格式规则)
  • 选中空白表的对应区域,按Ctrl + C,再回到Sheet2的C6单元格,右键 → 选择性粘贴 → 选择「格式」

内容的提问来源于stack exchange,提问作者excelhelppls

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 04:07:39