使用excel,是否可以指定要在单元格中报告的月份?
例如,excel需要报告最新报告的销售额(如果可用)。如果2月份的销售额不可用,那么它将报告1月份的销售额。同样,如果3月销售可用,它将在3月份报告销售情况。
如何在excel的单元格中编写此公式?如果不可能写这样的formuale,我们可以写一个vba来做这个吗?
答案 0 :(得分:0)
如果您的意思是您拥有销售条目列表并希望数据中的上个月销售额,您可以编写一个公式来获取最新月份。如果月份在A中你可以写:=month(max(A1:A99999))
请注意,如果您有多年的数据,则需要提取年份或获得约束日期。然后,您可以使用数组公式对销售额求和,例如假设第一个操作的结果在D1中,销售额在B中:{=sum(if(month(A1:A999999)=D1,B1:B999999,0))}
如果您在月内有增量更新,则会返回月初至今的数据。如果您需要上个月的数据,可以使用另一个数组公式来获取日期是该月最后一天的最大月份。
答案 1 :(得分:0)
如果B1:B12中未来数据的单元格为空白,那么您只需要提取B1中的最后一个数字:B12不是吗?如果是,请尝试
=LOOKUP(9.99E+307,B1:B12)
答案 2 :(得分:0)
您可以使用 OFFSET 功能根据月份选择特定数据。
插入公式以计算当前月份(或只输入月份数字)
=MONTH(TODAY())
选择当前销售数据月份的公式
=SUM(OFFSET(B1,MONTH(TODAY()),0,1,1))
在OFFSET函数中查看Excel中的帮助。它可用于选择一系列数据。例如,要将数据从年初返回到当前月份,公式将为:
=SUM(OFFSET(B1,1,0,MONTH(TODAY()),1))
如果当前月份还没有包含数据,您可以测试是否返回值,如果没有数据,则返回上个月。
=IF(SUM(OFFSET(B1,B16,0,1,1))=0,SUM(OFFSET(B1,B16-1,0,1,1),SUM(OFFSET(B1,B16,0,1,1))))
答案 3 :(得分:0)
我找到了这个答案:
=IF(B12<>0,B12,IF(B11<>0,B11,IF(B10<>0,B10,IF(B9<>0,B9,IF(B8<>0,B8,IF(B7<>0,B7,IF(B6<>0,B6,IF(B5<>0,B5,IF(B4<>0,B4,IF(B3<>0,B3,IF(B2<>0,B2,IF(B1<>0,B1,0))))))))))))
此公式解决了获取最新可用数据的问题。