【excel函数的问题】有一条关于制作工资条的嵌套函数,一直不理解,望大侠解释下,小弟不胜感激 !

供稿:hz-xin.com     日期:2024-05-03
如何用excel函数制作工资条

Excel小技巧

Excel小技巧

我先来解释第二个,IF函数那个吧。
请注意,这个函数是在B1单元格输入的。
首先要理解MOD(ROW(),3)=1这个判断条件
(1)MOD是余数函数,这个判断条件的意思是:如果所在行与3相除的余数为1
即,如果行数是4,那么就是MOD(4,3)=1,则判断条件成立
如果行数是6,那么MOD(6,3)=0,则判断条件不成立。
所以,在这个条件成立的时候,判断函数IF会取第一个值,即“单行表头工资明细!A$1”。从你发的文件上来看,1这行指的是表头,即“姓名”、“时间”这些项目名。
所以,在生成的新表中,第1行,第4行,第7行……(这些行与3相除的余数都为1),都会生成表头。
(2)而如果这个条件不成立,则第二个IF函数进行继续判断
如果余数为2(第2行、第5行、第8行……),会进行定位函数OFFSET(单行表头工资明细!A$1,ROW()/3+1,0)
这个函数的意思是,以A1单元格为参考值,向下取ROW()/3+1的值,由于2/3,5/3和8/3这样的值都是不足1,2,3的,因此要补一个1上去,所以ROW()/3+1的值,应该是1,2,3……
即新表的B2单元格,以A1为标准,向下取1行,得到原表的A2。
而新表的D5单元格,以D1为标注,向下取2行,得到原表的C3。
(3)如果前面两个条件都不成立,则余数为0,也就是说第3行,第6行,第9行……,根据函数,则得到空值,所以这一行都会变为空行。

这样就得到了那个新表。

CHOOSE函数的原理和这个差不多,前面MOD(ROW(),3)+1是判断条件,后面是按照前面等于1,等于2,等于3的三个结果。
在新表的第3行,第6行,MOD(ROW(),3)+1会等于1,所以输出是空值
在新表的第1行,第4行,MOD(ROW(),3)+1会等于2,所以输出的是表头
在新表的第2行,第5行,MOD(ROW(),3)+1会等于3,所以输出是OFFSET函数,还是定位的一个值。

写了这么多,希望能够帮到你哦!

1. =CHOOSE(MOD(ROW(),3)+1,“”,单行表头工资明细!A$1,OFFSET(单行表头工资明细!A$1,ROW()/3+1,))
其中:
MOD(ROW(),3)+1 就是公式所在单元格的行数mod 3之后+1,如:公式在A3,结果是“1”,在A4,结果为“2”;A5,结果为“3”;A6,结果为“1”,1 2 3 1 2 3一直循环……

单行表头工资明细!A$1:不知道你的表格具体的单元格是什么内容;

OFFSET(单行表头工资明细!A$1,ROW()/3+1,):结果就是根据a1列一直偏移ROW()/3+1个单位,不知道你的表格具体的单元格是什么内容,所以也很难说是什么。
但可以确认的是:假如a1=1,a2=2,a3=3……,则公式在对应行向下拖结果是:2 2 3 3 3 4 4 4 5 5 5 6 6 6……一直循环,应该是姓名循环吧?

choose() :就是根据公式所在的单元格的行数确定这个函数的结果,
从第3行开始,第3,6,9……每隔3行,结果为“”(空白);
第4,7,10……每隔3行,结果为“单行表头工资明细!A$1”;
第5,8,11……每隔3行,结果为“OFFSET(单行表头工资明细!A$1,ROW()/3+1,)”

另外一个也类似的。楼主最好发附件,不然比较难解析给你听。
还有不明可以百度hi我~

excel2003中关于if函数的一道题-如果数学语文英语成绩均大于等于100...
答:如图,F2单元格输入并下拉公式=IF(COUNTIF(B2:D2,">=100")=3,"优良","/")

关于EXCEL函数的问题。具体问题是这样的
答:你公式用反了,你公式里面“A1”的位置应该是表2中的A1;“Sheet2!A:B”应该是表1中的A:B列,“2”代表的是返回的正确值,“true”位置正确的应该返回false,在VBA中0代表错误的。正确的公式应该是在表2中的A1列...

有关EXCEL函数问题
答:这是按照你的公式计算的。我看你的公式好像有错误。是不是应该=1000*6+1000*5+1000*4+147*4啊??而且是1000一下没有,1001-2000是6元 2001-3000是5元,3001以上的部分是4元 如果是那样的话。公式应该为。==IF(...

EXCEL关于函数的问题。
答:假如你的数值是10个的话,那么在J列中的J3单元格中输入公式 =IF(B2=H2,I2,IF(B2=H3:H13,I3:313))最后以ctrl+shift+enter三键结束公式 然后公式向下复制即可!

有关EXCEL函数的问题
答:在G2中输入:=if(and(d2>0,f2>90),0,if(and(d2=0,f2>90),0,(f2-90)*1.2))如果是指定在日期:10/8/2这天的话,还要加个日期的判断。=if(and(b2=DATE(2010,8,2),d2>0,f2>90),0,if(and(b2=...

请教excel高手关于excel随机函数的问题
答:E10),为10则有效;(2)对总币数求和:在F11中输入公式:=sumproduct($D$1:$D$10,$E$1:$E$10),为254则有效。注:可在任意空白单元格位置按Delete刷新数据,由于随机性可能使结果有偏差,多刷新几次就可以了。

【急】excel表格关于函数的问题。
答:添加两列辅助列 vlookup 查找会吧 函数对应180XXX 表格对应181XXX 然后辅助列用vlookup查找对应关系 即保证选择函数时,辅助列1显示的是180XXX,选择表格时,辅助列1出来的是181XX 然后再辅助列2中填入自己的数字 最后C列就...

关于Excel一个函数问题
答:看你的文字描述,似乎表中的“公里数”是行程结束后的公里数,但是你表中给出的公里数和行驶公里数的关系来看,好像这公里数又是行程开始时的公里数。请确认表中公里数到底是行程开始时的公里数还是行程结束后的公里数。按...

请教一个EXCEL关于IF函数的问题(急求啊!在线等!采纳了再追加悬赏分...
答:,160,140))或 =IF(F2="高工",200,IF(F2="技术员",140,160))下拉填充 在P2中输入或复制粘贴此公式 =COUNTIF(F:F,P2)下拉填充 在Q2中输入或复制粘贴此公式 =COUNTIF(F:F,P2)/(COUNT(F:F)-1)下拉填充 ...

关于Excel函数的问题
答:A4中输入公式:=IF(AND(A1="是",A3<>A1),1,IF(AND(A1="是",A3=A1),2,IF(AND(A1="否",A3=A1),3,4)))