Excel宏 - 搜索单元格范围为0,然后返回"empty"单元格



这是我第一次使用这个论坛,我的VBA技能并没有得到很好的发展。我希望有人能帮忙。

我有两列数据,A列B列

列A-返回连续的"月-年"或0。如果电子表格当前日期(=now())小于二月,则二月的单元格返回0。

列B-我希望此列检查列A中的每个单元格。如果列A的单元格有日期标识符,我希望将其放在列B中。如果列B的标识符为0,我希望列B返回一个"空"单元格。

我这样做的原因是我正在绘制条形图。当我欺骗程序制作一个空单元格(x轴)时,图形不会显示当月的任何数据(这正是我想要的)。试图制作一个动态图形,但我没有VBA方面的经验(只有C编程=/)。

执行此操作不需要VBA(甚至不需要公式)。高亮显示列A(整列),复制它。高亮显示列B(整个列,右键单击,特别粘贴,选择值和数字格式,好吗。再次高亮显示列B。按Ctrl+H,在"查找内容"中键入0(否则可能是00/01/1900),将"替换为"留空。勾选匹配整个单元格内容。单击全部替换。完成。

不要尝试空白(这是不可能的,因为该单元格中有一个公式),而是使用错误条件
使用此公式,并向下复制:

=IF(A1=0,NA(),A1)

这将返回错误条件#NA,Excel会将该列留空

另一种方法是为图表数据设置一个动态范围——我有一个图表,根据本周返回的数据,它将调整为5、6或7天。水平(类别)轴标签设置为命名范围(='Sample.xlsx'!LastWeekRange),该范围检查数据并返回适当数量的单元格
LastWeekRange在名称管理器中定义为=OFFSET(Data!$A$3,0,0,IF(Data!$F$9>0,7,IF(Data!$F$8>0,6,5))),如果F8中没有任何内容,则返回A3:A7;如果F89,则返回A3:A9

相关内容

最新更新