我在Google表格中构建了一个资源规划器,其中包含针对不同资源的项目开始和结束日期,其输出类似于附件1:
从这个输出中我现在想要测量当前日期(在此示例中为Today()= 21/06/2017)该资源当前是否参与项目。因此,在单独的表中,我生成了像Attachment2这样的输出:
我尝试使用MAX IF公式来执行此操作,方法如下:
首先为该资源找到大于今天的结束日期(如果为null,则为“N”)
然后找到那些小于今天的结束日期的开始日期(如果为null则为“N”ELSE“Y”)
我在这里可以看到我使用的公式(其中D31是用于在Attachment2中查找Attachment1的资源名称,$ B $ 3:$ B $ 6是Attachment1资源名称,$ D $ 3:$ D $ 6是结束日期,$ C $ 3:$ C $ 6是开始日期):
=ArrayFormula(IF(AND(D31 = $B$3:$B$6, $D$3:$D$6 <TODAY()), "N", IF(AND(D31 = $B$3:$B$6, $C$3:$C$6 >TODAY()), "N", "Y")))
即使资源应该被使用,这总是会返回“Y”的异常值,因此是不正确的。我还通过谷歌查询语言查看了使用SQL,但在尝试使用CASE功能时仍然发现错误
我如何才能达到理想的效果?
答案 0 :(得分:1)
使用class Salary:
def __init__(self,pay):
self.pay=pay
def get_total(self):
return (self.pay*12)
class Employee:
def __init__(self,pay,bonus):
self.pay=pay
self.bonus=bonus
self.obj_salary=Salary(self.pay)
def annual_salary(self):
return "Total: " + str(self.obj_salary.get_total()+self.bonus)
obj_emp=Employee(100,10)
print (obj_emp.annual_salary())
(正常,不是数组公式)尝试:
COUNTIFS