EXCEL 图表横轴如何在数据刷新后只保留显示非0值或非错误值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL 图表横轴如何在数据刷新后只保留显示非0值或非错误值?相关的知识,希望对你有一定的参考价值。

图中的统计表是动态生成的,对于数据刷新后为0值的F1、G1、H1,如何在折线图表刷新数据的时候,横坐标自动不显示F1、G1、H1的0值对应数据

    公式选项卡下名称管理器内新建名称,里面公式:

    =OFFSET($B$2,,,,LOOKUP(1,0/($B$2:$H$2),COLUMN($B:$H)-1))

2.选中图表内的数据系列,右击后点击“选择数据”,选中“频次”序列,点击“编辑”,如图设置即可。

追问

谢谢大神,问题解决了,也为后续其他问题也提供了思路。
一直没弄清楚怎么解决图表的动态引用问题,原来使用名称管理器就行了orz
顺便确认下呢,offset($B$2,,,,)是否等于offset($B$2,0,0,1,1)

追答

参考技术A 感觉直接是没什么好办法的。但可用曲线的方法实现:在保留原数据的情况下,可以在另外的区域,甚至另外的工作表中引用原数据,引用剔除0和错误。比如你截图中的数据,在当前工作表中,可以将A1:A2复制到A3:A4,B3中输入公式:
B3=IFERROR(INDEX(1:1,SMALL(IF(($B1:$ZZ1=0)+($B1:$ZZ1="")+(ISERROR($B1:$ZZ1)),"",COLUMN($B:$ZZ)),COLUMN(A:A))),"")
下拉到B4,再一起下拉到出现空白单元格。作图时,引用第3行和第4行的数据。可根据实际数据可能到达的列,修改公式中的ZZ。甚至更灵活更准确的话,可以将原数据区域定义为动态名称,引用时引用动态名称。
参考技术B 将F2:H2中的0删除,保持空格状态追问

除了删除呢?因为需要在下次的数据更新后仍可显示,有没有在保留公式基础上的方法呢

在报告服务 s-s-rS 中的横轴图表上格式化数字

【中文标题】在报告服务 s-s-rS 中的横轴图表上格式化数字【英文标题】:Formatting numbers on a graph on the horizontal axis in reporting services s-s-rS 【发布时间】:2022-01-12 02:40:38 【问题描述】:

我正在使用 Visual Studio 2019 的报告服务,我正在制作一个堆积条形图表,我需要将值格式化为百分比,实际上我已经能够做到,但我无法格式化水平轴,它向我显示了非常大的数字,我在轴属性>轴范围和间隔中进行了尝试,但是设置了一个间隔、最大值等,但没有奏效我已经失去理智了,我搜索了许多不同解决方案不起作用的站点对我来说。

我需要在水平轴上显示 0、20、40、60 等值...但是正如您所见,它们的值太大了,有什么方法可以格式化这些数字以仅显示第一个两位数之类的?由于数据不同,我无法对此进行划分,如果有人经历过同样的事情,我需要您的帮助,非常感谢。

【问题讨论】:

我建议您截取您所获得的截图,以及您想要完成的编辑截图。很难用文字清楚地描述这一点。 感谢您的建议,我编辑了帖子。 将数字除以 1000000。 您希望轴显示为百分比 (0 - 100%) 吗?如果是这样,那么我会将图表系列中的值计算为百分比,然后您可以根据需要修复轴间隔和最小值/最大值。显示一些示例数据是没有帮助的。 非常感谢您的回答,但不幸的是,它不起作用。首先,我不能乘以 1000000,因为这些值来自数据库并且会有所不同,实际上我将最小/最大值设置为 0 - 100 没有百分号,我只想在条形图中看到该符号,但是,条形图从图表中出来,我尝试格式化水平轴但它也不起作用,我尝试使用 LEFT() 但它改变了实际值。 【参考方案1】:

在水平轴属性上,您可以将属性窗格中的LabelsFormat 属性或属性弹出窗口中的Custom Format 设置为基于值的动态。

=SWITCH(MAX(Fields!DATA.Value) > 1000000, "0,,M;(0,,)M", 
        MAX(Fields!DATA.Value) > 1000, "0,K;(0,)K", 
        1 = 1, "0,;(0,)")

这将以百万为单位的值显示为 1M、2M 等,而成千上万的值将显示为 1K、2K...

表达式 (MAX(Fields!DATA.Value)) 将根据图表的数据而有所不同。

【讨论】:

非常感谢您的回答,在我看来这是一个很好的解决方案,但在我的工作中,他们要求我显示两位数(0 - 100)的值,如果达到,显然是 3 位数100,但不超过,这个想法是它等于酒吧的数量,非常好的答案,我肯定会在某些时候申请,无论如何我很感激你的回答。

以上是关于EXCEL 图表横轴如何在数据刷新后只保留显示非0值或非错误值?的主要内容,如果未能解决你的问题,请参考以下文章

EXCEL怎么让小数后两位显示0

EXCEL怎么让小数后两位显示0

Excel2010图表怎样删除坐标轴线但保留坐标数字

Excel2010图表怎样删除坐标轴线但保留坐标数字

Excel纵轴交叉,如图中怎么做到的,交叉点不是0,横轴只显示整数的刻度

数据可视化-Excel图表的基本类型与选择