Bootstrap

excel公式 某一个单元格等于另一个单元格的值_用数学的思路编写Excel公式

1b09533c1ccad605814a17fbedbe1f3c.png

Hello,各位小伙伴们大家好呀。又是好久没更新了,大家有没有想我呀。距离上次推文到今天已经过去 268 天了。这里用 DATEDIF 函数计算一下就可以得到结果。

=DATEDIF("2019-01-30", "2020-10-24", "d")

1b09533c1ccad605814a17fbedbe1f3c.png

史上最全的身份证号码处理思路合集

身份证号码的各种处理和计算方式大集合。涉及函数的综合应用,实用又有趣。

断更的这段时间里,Yogurt 在负责一些关于程序开发的工作,实在是抽不出时间来更新,这两天稍微能有点时间,来和大家聊聊天。

说起来,今天就是 "1024程序员节" 了,祝大家函数公式永不报错!VBA 永无 BUG !所有需求都能一稿过!初心不泯,永远保持对世界的好奇和热爱!Hello,World!

一直都有小伙伴来和 Yogurt 一起交流关于如何编写一个更好的函数公式的问题,一是时间关系,二是苦于没找到一个比较合适的案例来和大家分享。最近 Yogurt 在『Excel学习群』(群号:93123600 / 815602122) 里看到有两个小伙伴 @沙拉@币马翁 分享出来请求支援的案例,刚好都符合这一期想要和大家分享的话题内容。因此,就以分享这两个案例的过程来和大家一起聊一聊——"用数学的思路编写Excel公式"。

国际惯例先上案例。

(以下所有的数据都进行了脱敏处理,

案例的使用提前知会了当事人)

1

检查未核对发票的月份

1.1 需求说明

def15b2780ecb4dafcd4dc500fd61717.png

上述就是需求的表格内容。要求如下:

在备注列 ( N 列) 中编写一条公式,根据月份列 ( E列、G列、I列、K列) 中单元格的值是否为 0.00 来判断该月的发票是否核销。

当月份列的单元格的值为 0.00 时,则需要在备注栏中输出该月份名称。当所有的月份列的单元格均不为 0.00 时,则无需显示任何内容。

例如:

1)5 月、6 月、7 月、8 月的金额都不为 0.00,备注列显示为空

2)5 月、7 月的金额不为 0.00,备注列显示为『 因其个人原因,6 月、8 月未报销』

需求最终效果如下:

b1c8846e99ca9d4fdee6f165d827e3ab.png

2.1 需求分析

从需求出发,其实解决起来也很简单,分别逐个对这些单元格进行判断,将所有的计算结果全部合并起来就可以了。一般情况下,也是我们第一时间能反应过来的方法。如下图:

a9135b6112dd5a3acc8563f713046a8c.png

=IF(OR($E2=0,$G2=0,$I2=0,$K2=0),"因其个人原因,"&MID(IF($E2=0,"、"&$E$1,"")&IF($G2=0,"、"&$G$1,"")&IF($I2=0,"、"&$I$1,"")&IF($K2=0,"、"&$K$1,""),2,999)&"未报销","")

但有没有别的不一样的思路可以解决这个问题呢?如果这里有 12 个月份列,而我们依然采用这种方法来解决的话,将会如何?再如下图:

f4e0ac8b48ad01ea0a3a5f3a6f7ac673.png

=IF(OR($E2=0,$G2=0,$I2=0,$K2=0,$M2=0,$O2=0,$Q2=0,$S2=0,$U2=0,$W2=0,$Y2=0,$AA2=0),"因其个人原因,"&MID(IF($E2=0,"、"&$E$1,"")&IF($G2=0,"、"&$G$1,"")&IF($K2=0,"、"&$K$1,"")&IF($M2=0,"、"&$M$1,"")&IF($O2=0,"、"&$O$1,"")&IF($Q2=0,"、"&$Q$1,"")&IF($S2=0,"、"&$S$1,"")&IF($AA2=0,"、"&$AA$1,"")&IF($U2=0,"、"&$U$1,"")&IF($W2=0,"、"&$W$1,"")&IF($Y2=0,"、"&$Y$1,"")&IF($AA2=0,"、"&$AA$1,""),2

;