如何根据Excel中的多个If计算总和?

背景是,我正在制作预算电子表格。 我在不同的日子有不同的账单。 (即周一到期的账单和10日到期的账单)

我想要一个函数,将在D列中放入适当数量的资金,并在E列中说明资金进/出的原因。

目前我有两个不同的公式(可能是错误的)。

E列的公式:(已经在文档中,似乎工作正常,除了我不能添加额外的文本到单元格)

=IF(DAY(C36)=7," Amy Pay","")&IF(DAY(C36)=22," Amy Pay","")&IF(DAY(C36)=8," Family Bills","")&IF(DAY(C36)=6," Dollar Shave Club","")&IF(DAY(C36)=2," Amy Cap One VISA","")&IF(DAY(C36)=3," Chase VISA","")&IF(DAY(C36)=8," Being Smart","")&IF(DAY(C36)=17," Gym","")&IF(DAY(C36)=11," Netflix","")&IF(DAY(C36)=19," Cap One MC","")&IF(DAY(C36)=29," CenturyLink","")&IF(DAY(C36)=6," Haley Cap One Visa","")&IF(DAY(C36)=10," SRP","")&IF(DAY(C36)=23, "Car Payment","")&IF(DAY(C36)=30, "Rent","")&IF((B36)="Mon"," Monday","")&IF((B36)="Fri"," Friday","")&IF((B36)="Fri"," Haley Pay","") 

D列的公式:(不在列中,因为它不工作,我想要的)

 =IF(DAY(B40)=7,"1474.22","")&IF(DAY(B40)=22,"1474.22","")&IF(DAY(B40)=8,"-100","")&IF(DAY(B40)=6,"-9","")&IF(DAY(B40)=2,"-100","")&IF(DAY(B40)=3,"-100","")&IF(DAY(B40)=8,"-400","")&IF(DAY(B40)=17,"-20.05","")&IF(DAY(B40)=11,"-8.63","")&IF(DAY(B40)=19,"-450","")&IF(DAY(B40)=29,"-50","")&IF(DAY(B40)=6,"-150","")&IF(DAY(B40)=10,"-200","")&IF(DAY(B40)=23,"-325","")&IF(DAY(B40)=30,"-500","")&IF((A40)="Mon","-125","")&IF((A40)="Fri","-325","")&IF((A40)="Fri","400","") 

View post on imgur.com

在这里输入图像说明

问题是在列D中,而不是提供数字的总和,它列出列中的数字。

View post on imgur.com

在这里输入图像说明

我有一个build议添加= SUM(在IF前面的函数,但是当我这样做的时候,#VALUE!就是这个字段的结果)使用这个公式:(查看图像通过改变附加文本到/ CVs0f1v)

 =SUM(IF(DAY(B40)=7,"1474.22","")&IF(DAY(B40)=22,"1474.22","")&IF(DAY(B40)=8,"-100","")&IF(DAY(B40)=6,"-9","")&IF(DAY(B40)=2,"-100","")&IF(DAY(B40)=3,"-100","")&IF(DAY(B40)=8,"-400","")&IF(DAY(B40)=17,"-20.05","")&IF(DAY(B40)=11,"-8.63","")&IF(DAY(B40)=19,"-450","")&IF(DAY(B40)=29,"-50","")&IF(DAY(B40)=6,"-150","")&IF(DAY(B40)=10,"-200","")&IF(DAY(B40)=23,"-325","")&IF(DAY(B40)=30,"-500","")&IF((A40)="Mon","-125","")&IF((A40)="Fri","-325","")&IF((A40)="Fri","400","")) 

关于如何让所有的东西填充和适当的总和的任何想法?

原谅我的非Excel大师的知识 – 试图学习。 :d

-Amy

如果您从第一个工作公式中select所有选项并更改检索方法,您将拥有更多function的工作表,可以轻松地接受新的添加项目和计划修改。

家庭账单付款时间表

  1. 在右边的几个未使用的列中,在每个月的date和发生的操作。 我正在使用列Y和Z.你有两个事件发生在六号,所以我把它们放在一起。
  2. 在其他一些未使用的列中使用星期几和相关的文本。 我已经使用V&W列。星期天的默认值是1。
  3. 在E36中使用这个公式,
    =TRIM(IFERROR(VLOOKUP(DAY(C36),$Y:$Z, 2, FALSE), "")&" "&IFERROR(VLOOKUP(WEEKDAY(C36),$V:$W, 2, FALSE), ""))
  4. 根据需要填写。

如果您想要B列中的星期几,请使用=C36并使用ddddddd的自定义数字格式。

参考文献:

VLOOKUPfunction
WEEKDAYfunction

你连接看起来像数字的文本string。 你可能想要添加实际的数字:

 =SUM(IF(DAY(B40)=7,1474.22,0) + IF(DAY(B40)=22,0) + ... 

尽pipe每当我看到一个复杂的公式时,我会考虑寻找一个不同的解决scheme – Vlookup浮现在脑海。

另外,用VLOOKUP表,你会看到你有一些冲突 – 例如:你列出了相同的条件B40 = 8返回两个不同的值; 和A40 = Fri的条件相同,也返回两个不同的值。