目前我正在尝试使用openoffice calc(办公室约束)
来建立一个离开跟踪系统所以我有2张数据
!st sheet看起来像这样
s/n name date start date end
1 test 3 Jan 2012 3 Jan 2012 <- formatted to date format
2 test 6 Jan 2012 8 Jan 2012
而我添加公式
后,我的第二张纸应该是这样的 name 3Jan 4Jan 5Jan 6Jan 7Jan 8Jan <- formatted to date format
test 1 1 1 1
所以我现在的问题是在第二张纸上使用一个公式,在参考纸张1的日期下自动添加一个&#34; 1&#34;如果那个人当天休假那么
如果我要从单元格中获取值
,日期会给我一个序列号我用它来匹配第1页和第2页上的日期
使用vlookup我能够从表2中获取第1页中日期开始和结束的值
=VLOOKUP(A2;$A$2:$D$3;3;0)
=VLOOKUP(A2;$A$2:$D$3;4;0)
然后我使用if语句添加&#34; 1&#34;或者&#34;&#34;
=IF(VLOOKUP(A2;$A$2:$D$3;3;0)=MID(B1;1;6);"1";"")
然而,我遇到这个部分的问题,我得到了许多天的假期(例如第1页中的条目2,假期从1月6日至8日
所以如果日期大于等于开始日期且日期小于等于结束日期但是失败
,我会尝试比较这些值以下是我使用的公式
=IF(VLOOKUP(A2;$A$2:$D$3;3;0)>=MID(B1;1;6)<=VLOOKUP(A2;$A$2:$D$3;4;0);"1";"")
任何人都可以帮我解决这个问题吗?还是有其他更好的想法?
提前致谢
答案 0 :(得分:0)
如果您使用的是excel 2007或更高版本,请尝试此操作(单元格B2
的公式)
=COUNTIFS(Sheet6!$B:$B,$A2,Sheet1!$C:$C,"<="&B$1,Sheet1!$D:$D,">="&B$1)
答案 1 :(得分:0)
假设s/n
位于!st
工作表的A1中,而Name
位于第二张工作表的A1中,位于第二工作表的B2中,并复制到适合的位置:
=IF(COUNTIFS(first.$B1:$B99;$A2;first.$C1:$C99;"<="&B$1;first.$D1:$D99;">="&B$1)=0;"";COUNTIFS(first.$B1:$B99;$A2;first.$C1:$C99;"<="&B$1;first.$D1:$D99;">="&B$1))