如何在柱形图或条形图中为正值和负值的柱子分别设置不同的颜色?
在 Excel 中处理数据时,通常会使用柱形图或条形图来可视化收益与损失、利润与支出等二元对立的数值。然而,默认情况下,Excel 无论数值正负,均以单一颜色显示所有柱形,导致观众难以快速识别趋势或一眼看出关键差异。
为提升图表清晰度并呈现专业视觉效果,您可为正负柱形分别设置不同颜色。本教程全面介绍多种在柱形图或条形图中区分正负值颜色的有效方法,助您轻松打造直观易懂的 Excel 图表。每种方法均包含详细步骤、适用场景、优缺点分析及避免常见错误的实用技巧。
在柱形图/条形图中为正负柱形设置不同颜色
VBA 宏:自动按正负值为柱形着色
Excel 公式:使用辅助列和数据系列实现双色条形图
在柱形图/条形图中为正负柱形设置不同颜色
Excel 内置了负值时反向功能,可快速直观地区分柱形图或条形图中的正负数据。该方法适用于中小型数据集,无需公式或脚本——若追求以最少设置实现简洁明了的视觉区分,强烈推荐使用!
1. 右键单击图表中的数据系列柱形,然后在上下文菜单中点击设置数据系列格式,如下图所示:

2. 在设置数据系列格式对话框中,选择左侧窗格中的填充,然后勾选负值时反向复选框,即可让 Excel 识别并直观地区分正负数据。参见下图:

3. 接下来,为数据柱形应用不同颜色:勾选纯色填充选项,然后在填充颜色部分分别为正值和负值选择所需颜色,即可实现两类数据的完全自定义。参见下图:

4. 选择颜色后,单击关闭退出,您的图表将自动以所设颜色显示正负柱形,使分析和报告中的区分更加清晰。

注意事项与技巧:
1. 在 Excel 2013 及更高版本中,右键单击数据柱形并选择设置数据系列格式后,界面将以侧边窗格形式打开。点击其中的填充与线条图标,勾选负值时反向,然后在纯色填充选项下分别为正、负柱形指定颜色。操作指引参见下图:

2. 此方法适用于柱状图和条形图。
3. 如果图表包含多个系列,或需根据特定逻辑(如超出正负值范围)为柱形单独着色,则可能需要使用高级选项(例如 VBA 或辅助列)。
4. 若“负值时反向”选项显示为灰色不可用,请再次确认您正在编辑的是单系列图表而非堆积图表——该功能不适用于堆积柱形图或条形图。
此解决方案凭借其简单快捷的优势广受青睐,尤其适用于单一数据系列的柱形图或条形图。如需更精细的控制或实现批量自动修改,请考虑以下高级方法。
VBA 宏:自动按正负值为柱形着色
如果您需要通过编程方式根据数值(正数或负数)动态设置柱形颜色,或处理包含多个数据系列的图表及更复杂的着色逻辑,可借助 VBA 宏实现。该方法在批量处理与统一格式化方面极具灵活性,尤其适用于需定期更新图表或管理大型数据集的场景。
1. 按 Alt + F11 打开 Visual Basic for Applications 编辑器。在 VBA 窗口中,点击插入> 模块,然后将以下代码复制并粘贴到新模块中:
Sub ColorBarsPositiveNegative()
Dim cht As Chart
Dim srs As Series
Dim iPoint As Integer
Dim vValue As Variant
Dim posColor As Long
Dim negColor As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
' Set your preferred RGB colors below
posColor = RGB(91, 155, 213) ' Blue for positive
negColor = RGB(192, 80, 77) ' Red for negative
' Use currently selected chart
If ActiveChart Is Nothing Then
MsgBox "Select a chart first.", vbExclamation, xTitleId
Exit Sub
End If
Set cht = ActiveChart
For Each srs In cht.SeriesCollection
For iPoint = 1 To srs.Points.Count
vValue = srs.Values(iPoint)
If vValue >= 0 Then
srs.Points(iPoint).Format.Fill.ForeColor.RGB = posColor
Else
srs.Points(iPoint).Format.Fill.ForeColor.RGB = negColor
End If
Next iPoint
Next srs
End Sub 2. 关闭 VBA 编辑器,返回 Excel 工作表,选中图表后,按 Alt + F8 打开“宏”对话框,选择 ColorBarsPositiveNegative 并单击运行,宏将自动遍历所有柱形,为正值应用蓝色、负值应用红色。
技巧与注意事项:
- 您可以使用
RGB函数()RGB(R,G,B)),将posColor和negColor自定义为任意颜色。如需获取 Excel 标准调色板的精确 RGB 值,请参考取色器。 - 此解决方案适用于簇状柱形图和条形图,无论是单一系列还是多个系列;堆积图表可能需要额外调整。
- 如果宏未生效,请再次确认在运行代码前已选中图表。
- 如需批量自动化处理多个图表或动态数据集,只需修改代码以循环遍历所有图表即可。
如果您经常生成复杂报告,或需要超出默认图表选项支持范围的高度自定义着色规则,此 VBA 方法将是理想之选。但请注意,宏安全设置可能会限制代码执行,如遇提示,请务必启用宏。
Excel 公式:使用辅助列和数据系列实现双色条形图
另一种实用方案(尤其适用于需要完全手动控制颜色分配,或需可视化超出正负值范围的内容——例如根据数值大小使用不同深浅)是利用 Excel 公式创建两个辅助列:一列仅保留正值,另一列仅保留负值。随后,将这两列分别作为独立的数据系列进行绘制,并为每个系列指定专属颜色。即使需要应用复杂的条件格式逻辑,或仅对特定柱形显示数据标签,该方法依然表现优异。
以下是组织数据和配置图表的方法:
假设原始数据位于 B 列(B2:B11)。
1. 在原始数据旁插入两列辅助列:“正值”和“负值”。
2. 在新的“正值”辅助列中,于第一个单元格(如 C2)输入以下公式:
=IF(B2>=0,B2,NA()) 当 B2 为正数或零时,此公式返回其值;若为负数,则返回 NA(),Excel 图表将忽略该值(不显示柱形)。
3. 在“负值”辅助列的第一个单元格(如 D2)中输入以下公式:
=IF(B2<0,B2,NA()) 此公式仅显示负值,非负值将被隐藏。
4. 将两个辅助列中的公式向下拖动,覆盖整个数据范围。
5. 按住 Ctrl 键,选择您的类别标签和两个辅助列,然后插入簇状柱形图或条形图,即可看到两个数据系列:一个用于正数(仅显示正值的柱形),一个用于负数,两者以不同颜色清晰区分。
提示与说明:
- 使用
NA()可避免在无需显示的位置出现空白或高度为零的柱形,从而保持图表的视觉清晰度。 - 此方法还可进一步扩展至附加条件——例如,通过增加更多辅助列并结合条件逻辑,即可根据自定义阈值或数值范围为柱形图着色。
- 如需自动更新图表,请务必将数据范围扩展至新增内容,或将数据转换为 Excel 表格。
- 当“负值时反向”选项无法提供足够的灵活性,或在处理堆积图/复杂图表时,请使用此方法。
采用此结构后,图表更新与格式调整变得简单直观,同时您仍可对各数据系列的格式进行精细控制。
相关文章:
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱