跳至主要内容

如何在 Excel 中为合并单元格的交替行着色?

Author: Xiaoyang Last Modified: 2025-05-07

在大数据中使用不同颜色格式化交替行对我们扫描数据非常有帮助,但有时您的数据中可能会有一些合并单元格。为了像下面截图所示那样用不同的颜色突出显示合并单元格的交替行,您如何在 Excel 中解决这个问题呢?

color alternate rows for merged cells example

使用条件格式为合并单元格的交替行着色

使用 VBA 代码为合并单元格的交替行着色


使用条件格式为合并单元格的交替行着色

在 Excel 中,强大的功能 - 条件格式可以帮助您尽可能快地完成此任务,请按照以下步骤操作:

1. 选择包含要交替着色的合并单元格的数据区域,然后点击 开始 > 条件格式 > 新建规则,参见截图:

click Home > Conditional Formatting > New Rule

2. 在弹出的新格式规则对话框中,进行以下操作:

  • 选择规则类型列表框中选择 使用公式确定要设置格式的单元格 选项;
  • 然后在为此公式为真时设置格式值文本框中输入此公式:=MOD(COUNTA($A$2:$A2),2)=0
  • 注意A2 是数据区域的第一个单元格。

specify the options in the dialog box

3. 然后,点击 格式 按钮进入 设置单元格格式 对话框。在 填充 选项卡下,选择一种您想要用来突出显示行的颜色,参见截图:

choose one color under the Fill tab

4. 点击 确定 > 确定 关闭对话框,带有合并单元格的行将填充您指定的颜色,参见截图:

the rows with the merged cells are filled with the color

5. 继续点击 开始 > 条件格式 > 新建规则 打开 新格式规则 对话框,进行以下操作:

  • 选择规则类型列表框中选择 使用公式确定要设置格式的单元格 选项;
  • 然后在为此公式为真时设置格式值文本框中输入此公式:=MOD(COUNTA($A$2:$A2),2)=1
  • 然后,点击 格式 按钮选择另一种您想要用来突出显示行的颜色。
  • 注意A2 是数据区域的第一个单元格。

specify another options in the dialog box

6. 然后,点击 确定 > 确定 关闭对话框,现在,您可以根据合并单元格看到所选数据区域已按两种不同颜色交替着色,如下截图所示:

the selected range is shaded with two different colors alternately based on the merged cells


使用 VBA 代码为合并单元格的交替行着色

除了普通的条件格式外,您还可以使用 VBA 代码轻松应用合并单元格的交替行颜色。

1. 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。

2. 然后,点击 插入 > 模块,并将以下代码粘贴到模块窗口中。

VBA 代码:为合并单元格的交替行着色

Sub Kutools_AlternateColor()
'Update by ExtendOffice
Dim xRg As Range
Dim xCRg As Range
Dim xIRg As Range
Dim xC1, xC2 As Integer
Dim xR1 As Integer
Dim xCnt As Long
Dim xLColor, xDCR1, xDCR2 As Long
Set xRg = Application.InputBox("Please select the data range:", "KutoolsforExcel", "", Type:=8)
If TypeName(xRg) = "Nothing" Then Exit Sub
Set xCRg = Application.InputBox("Please select the column with the merged cells:", "KutoolsforExcel", "", Type:=8)
If TypeName(xCRg) = "Nothing" Then Exit Sub
Set xIRg = Intersect(xRg, xCRg)
If xIRg Is Nothing Then
MsgBox "the data range doesn't contain merged cells"
Exit Sub
End If
xC1 = xRg.Column
xC2 = xIRg.Column
xR1 = xRg.Row
xLColor = RGB(221, 235, 247)
xDCR1 = RGB(221, 235, 247)
xDCR2 = RGB(250, 232, 222)
xRw = 0
Do
xLColor = xDCR1 + xDCR2 - xLColor
xCnt = Cells(xRw + xR1, xC2).MergeArea.Rows.Count
Cells(xRw + xR1, xC1).Resize(xCnt, xRg.Columns.Count).Interior.Color = xLColor
xRw = xRw + xCnt
Loop While xRw < xRg.Rows.Count - 1
End Sub

3. 然后,按 F5 键运行此代码。在第一个弹出框中,选择您要使用的数据范围,参见截图:

 vba code to select the data range

4. 在第二个提示框中,选择带有合并单元格的列,参见截图:

vba code to select the column with merged cells

5. 然后,点击 确定 按钮,行将基于合并单元格交替着色,如下截图所示:

the rows are shaded alternately based on the merged cells


视频:为合并单元格的交替行着色

 

更多相关文章:

  • 从合并单元格过滤所有相关数据
  • 假设您的数据范围内有一列合并单元格,现在,您需要过滤这列合并单元格以显示与每个合并单元格相关的所有行,如以下屏幕截图所示。在 Excel 中,筛选功能允许您仅筛选与合并单元格关联的第一个项目,在本文中,我将讨论如何在 Excel 中从合并单元格过滤所有相关数据?
  • 复制并粘贴合并单元格到单个单元格
  • 通常,当您复制合并单元格并将它们粘贴到其他单元格时,合并单元格将直接粘贴。但是,您希望将这些合并单元格粘贴到单个单元格中,如以下屏幕截图所示,以便您可以根据需要处理数据。本文中,我将讨论如何复制和粘贴合并单元格到单个单元格。
  • 清除多个合并单元格的内容
  • 如果您有一个包含多个合并单元格的大工作表,现在,您想清除所有合并单元格的内容但保留合并单元格。通常,您可能会尝试使用 查找和替换 功能先选择所有合并单元格,然后按 Delete 键删除值,然而,您会收到警告消息“我们无法对合并单元格执行该操作”。在这种情况下,如何快速清除合并单元格中的值但保留合并单元格呢?
  • 自动编号合并单元格
  • 我们如何在 Excel 中将系列编号填充到不同大小的合并单元格列表中?首先想到的是拖动自动填充手柄来填充合并单元格,但在这种情况下,我们会收到以下警告消息,并且无法填充合并单元格。

  • 超级公式栏(轻松编辑多行文本和公式);阅读布局(轻松读取和编辑大量单元格);粘贴到筛选区域...
  • 合并单元格/行/列并保留数据;拆分单元格内容;合并重复行并求和/平均值... 防止重复单元格;比较区域...
  • 选择重复或唯一行选择空白行(所有单元格为空);在多个工作簿中进行超级查找和模糊查找;随机选择...
  • 精准复制多个单元格而不改变公式引用;自动创建对多个工作表的引用;插入项目符号、复选框等...
  • 收藏并快速插入公式、区域、图表和图片;用密码加密单元格创建邮件列表并发送电子邮件...
  • 提取文本,添加文本,按位置删除,删除空格;创建并打印分页小计;在单元格内容和批注之间转换...
  • 超级筛选(保存并应用筛选方案到其他工作表);按月/周/日高级排序,频率等;按粗体、斜体特殊筛选...
  • 合并工作簿和工作表;基于关键列汇总表格;将数据分割到多个工作表批量转换 xls、xlsx 和 PDF...
  • 数据透视表按周数、星期几等分组... 用不同颜色显示未锁定、已锁定单元格高亮显示包含公式的单元格/名称...
kte tab 201905
  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
  • 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中。
  • 将您的生产力提高 50%,每天为您减少数百次鼠标点击!
officetab bottom