这是我第一次来这里,所以如果我在发布之前没有找到答案,请原谅我。
我有一个电子表格,用于跟踪某件商品的销售情况。我按日、周、月和年跟踪销售情况。我目前在脑中计算,但我想只输入一个数字,然后更新所有单元格。单元格如下:
- A1 = 天
- A2 = 周
- A3 = 月
- A4 = 年份
目前,我输入每日销售额,然后“手动”将其添加到其他列的先前总计中,以便每列都有其时间范围内的总计。对于单元格 A2、A3 和 A4,公式基本相同,即:
基本上,我想要一个使用 2 或 3 个单元格的公式,单元格 1 只是一个输入的值(当日销售额),单元格 2 是一个将单元格 1 的内容添加到单元格 2 的当前值,然后使用新值更新单元格 2 的公式,在您的脑海中,您只需将新值添加到旧值并写下新值总数,但是 excel 似乎没有像我们的记忆那样的“保持”选项,所以问题就出在这里。
我希望这个例子有助于阐明我想要实现的目标。
现在在我看来这很容易实现但是 Excel 却拒绝轻易做到这一点。
我一直在尝试寻找解决方案,但是我甚至不知道如何提出问题,除了像刚才那样,我已经寻找了计数、循环计数、计数等,但是没有什么能给我我想要的。
有人建议我使用 VBA,但我也没有找到明确的说明。如果有人能帮助我,我将不胜感激。
谢谢。
答案1
仅使用工作表函数是无法实现的。
您将需要使用 VBA 来描述所需内容,这对于任何人来说都太复杂了,无法从头开始帮助您。
坦白地说,我们不会替您做工作。
话虽如此,您可以通过设置第二张表来跟踪您的日常进度来实现这一点。
然后使用您的第一张表链接并更新您的进度,如下例所示。
公式
在 A1 中使用=SUMIF(Sheet2!A:B, TODAY(),Sheet2!B:B)
它将会返回当天的结果。
在 A2 中使用=SUMIFS(Sheet2!B:B,Sheet2!A:A,">="&DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())-6),Sheet2!A:A,"<="&TODAY())
它将会返回包括今天在内的前 6 天的结果。
在 A3 中使用=SUMIFS(Sheet2!B:B,Sheet2!A:A,">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1),Sheet2!A:A,"<="&DATE(YEAR(TODAY()),MONTH(TODAY())+1,0))
将返回当前月份的结果。
答案2
如果我理解你的描述,你正在记录累计总数。但是,我认为你没有考虑到你在脑海中进行的日期计算。
通过对问题进行一些重新组织,你将使事情变得更容易。然后你可以使用数据透视表将数据切分为包含数据子集的有趣图表和/或表格。
下面我将带您了解这两个高级主题。
注意:我手边没有 Windows 机器,因此我将在分享的图片和链接中使用 Google 表格。我讨论的所有内容都受 Google 表格和 Excel 支持,并且这些应用程序之间有共同的术语。
创建数据表
当您从原始数据表开始时,您可以简化您的需求(不再需要在脑子里进行数学运算),并为将来的各种分析方法留下选择空间。
根据您的示例,数据表中的每一行将包含两条关键信息。日期和每日销售量。不要将销售数字与前一天的数据合并。一行代表一天,并且与相邻行的数据无关。
除了所需的数据、日期和销售额外,我派生/分解了其他几个值,这些值将使你更容易地对数据进行切分
得出的数据都是使用简单的公式计算的。请注意用于填充每一列的公式的简单性。它们很容易理解,因此好的。当您回顾几个月前编写的代码并试图弄清楚自己当时在做什么时,您就会体会到这一点的价值。
创建数据透视表
您是否已经熟悉数据透视表? 点击数据表的左上角并选择数据透视表从菜单中。默认情况下,这将在您的工作簿中创建一个新工作表。
首先,您将得到一个空的数据透视表。 您可以通过从数据中选择行和列的横截面来填充表格。例如,每月平均销售额表格如下
你可以复制/评论我的Google 表格,如果您愿意的话,可以自己做一些实验。
这有帮助吗?
如果我有未能让您满意的方面或者您还有更多疑问,请告诉我,我会尽力帮助您。