有没有办法更改我的Excel工作表中根据日期引用另一个工作表的公式?



我花了几个小时使用VBA,VLOOKUP,INDIRECT等浏览帖子,但对于这种特定情况没有太多运气,最终让自己更加困惑。

我基本上是在做一份每日财务报告。我有两个工作表。第一个是"摘要">,简单地收集当天销售中的所有数据和数字,并将它们整齐地呈现。第二个工作表是"每周">,这是我每天在单元格中输入直接值的地方(例如,已售商品,零售运费,今天的餐饮总销售额(。"每周"工作表在列中具有每月的每个日期,因此,例如,任何月份的 3 日的所有数字都是由我在 D 列下手动输入的。每月 4 日的所有数字都输入到 E 列中。

第一个工作表基本上只是更整齐地再次列出这些值,或者偶尔汇总到更大的销售类别中,这让我在"摘要"中有一长列单元格,其中包含诸如"每周!F8" "每周!F10-每周!F3",我必须每天更改以引用下一个日期的数字(例如每周!G8" "每周!G10-G3"(。到目前为止,我一直在使用搜索和替换来搜索"每周!*"并替换为"每周!字母表的下一个字母",但我正在寻找不同的解决方案。

摘要 - https://i.stack.imgur.com/5ANFk.png 每周 - https://i.stack.imgur.com/6OysS.png

有没有办法自动执行此操作,以便单元格公式更改为引用另一个工作表中的以下列,具体取决于日期或包含表示月份日期的整数的引用单元格。我可以手动更改一个引用单元格值,理想情况下,也可以更新整个参考公式列。

您可以使用OFFSET()工作表函数。例如,在第一个图像中,突出显示的单元格的公式将变为=+OFFSET(Weekly!A10,0,$A$1),其中单元格$A$1是包含月份中的某一天的参考单元格。

比在所有公式中使用OFFSET()更好的方法是在"每周"工作表的末尾添加一列,并将其称为"今天"。在此列的所有单元格中使用OFFSET()工作表函数。然后,您可以在"摘要"表中仅引用此列。

示例:在"每周"工作表中使用"AG"列作为"今天"的列。然后,"AG10"的公式将变得=OFFSET(A10,0,$A$1),并且第一张图像中突出显示的单元格的公式将变为=+Weekly!AG10

最新更新