【发布时间】:2017-04-13 20:33:08
【问题描述】:
我不是在寻找 VBA 解决方案。 目标是找出约翰在 2015 年 7 月 1 日开始的 12 个月内工作了多少小时。 我有两个工作表。工作表一如下所示:
Name | Date Start | Total Hours
John | 7/1/2015 | Formula goes here
工作表二
Date | John | Jane | Joe
7/1/2015 | 3 | 2 | 2.5
7/2/2015 | 3 | 2.5 | 0
rest of attendance data
日期可以在电子表格允许的范围内下降。我要做的是将函数保留在工作表公式中。我现在的公式是:
=SUMIFS(Worksheet2!B:B, Worksheet2!$A:$A, ">="&Worksheet1!$B2, Worksheet2!$A:$A, "<="&EDATE(Worksheet1!$B2, 12))
如果我通过 VBA 做到这一点,我可以这样做:
Range("B"&2 & ":" & "B" & 1058476)
但我正在寻找某种方法来查找该人的哪一列,谁的名字在该行的表 1 上,他们的名字出现在表 2 的哪一列;然后,总结工作表 2 中该列中 12 个月时间跨度之间的所有值,并将该数字放入工作表 1 单元格 C2 中。我不想使用 Worksheet2!B:B。
【问题讨论】:
-
没关系!我已经回答了这个问题 - 类似于:=SUMPRODUCT(OFFSET(Attendance!$A$1, 0, 1, 368))
标签: excel excel-formula