跳到主要内容

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

作者:晓阳 最后修改时间:2023-04-13

在大数据中用不同颜色格式化交替行对我们扫描数据很有帮助,但有时,您的数据中可能会有一些合并的单元格。 要使用不同颜色交替突出显示合并单元格的行,如下图所示,您如何在 Excel 中解决此问题?

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

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


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

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

1. 选择包含要交替着色的合并单元格的数据范围,然后单击 主页 > 条件格式 > 新规则,请参见屏幕截图:

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

  • 选择 使用公式来确定要格式化的单元格 选项从 选择规则类型 列表框;
  • 然后输入这个公式: =MOD(COUNTA($A$2:$A2),2)=0格式化此公式为真的值 文本框。
  • 备注: A2 是数据范围的第一个单元格。

3。 然后,点击 格式 按钮去 单元格格式 对话框。 在下面 选项卡,选择一种要突出显示行的颜色,请参见屏幕截图:

4。 点击 OK > OK 关闭对话框,合并单元格的行将填充您指定的颜色,请参见屏幕截图:

5。 继续点击 主页 > 条件格式 > 新规则 打开 新格式规则 对话框中,进行以下操作:

  • 选择 使用公式来确定要格式化的单元格 选项从 选择规则类型 列表框;
  • 然后输入这个公式: =MOD(COUNTA($A$2:$A2),2)=1格式化此公式为真的值 文本框。
  • 然后,单击 格式 按钮选择要突出显示行的另一种颜色。
  • 备注: A2 是数据范围的第一个单元格。

6。 然后,单击 OK > OK 关闭对话框,现在,您可以看到所选数据范围已根据合并的单元格交替使用两种不同的颜色进行着色,如下图所示:


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

除了正常的条件格式,您还可以使用 VBA 代码轻松地为合并的单元格应用替代行颜色。

1。 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。

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 运行此代码的关键。 在第一个弹出框中,选择要使用的数据范围,看截图:

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

5。 然后,单击 OK 按钮,行会根据合并的单元格交替着色,如下图所示:


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


更多相关文章:

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

  • 超级公式栏 (轻松编辑多行文本和公式); 阅读视图 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 和保存数据; 拆分单元格内容; 合并重复的行和总和/平均值...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 收藏并快速插入公式,范围,图表和图片; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级筛选 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 数据透视表分组依据 周号,周几等 显示未锁定的单元格 用不同的颜色 突出显示具有公式/名称的单元格...
kte选项卡201905
  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
Comments (4)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
А еще у вас неверная формула:)
Ну нет такой формулы - СЧЕТЧИК
Правильнее СЧЕТЗ =)
This comment was minimized by the moderator on the site
Hello, Влад
The formulas in this article have been translated, so you can try the below formulas in English:
=MOD(COUNTA($A$2:$A2),2)=0
=MOD(COUNTA($A$2:$A2),2)=1
Please try, hope it can help you!
This comment was minimized by the moderator on the site
Здравствуйте!
Спасибо за статью

У меня есть некоторое замечание
= ОСТАТ (СЧЕТЧИК ($ A $ 2: $ A 2), 2) = 0
правильно , сменить на ;
= ОСТАТ (СЧЕТЧИК ($ A $ 2: $ A 2); 2) = 0

но даже после этого не работает
This comment was minimized by the moderator on the site
Hello, Vlad
The formulas in this article have been translated, so you can try the below formulas in English:
=MOD(COUNTA($A$2:$A2),2)=0
=MOD(COUNTA($A$2:$A2),2)=1

Please try, hope it can help you!
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations