excel中生成工资条问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 00:30:42
用以下公式生成工资条
=IF(MOD(ROW(),3),OFFSET('1月份'!$A$2,(MOD(ROW()-1,3)>0)*ROUND(ROW()/3,),COLUMN(G82)-1),"")

但是两个员工工资条之间空了一行,现在不想要空行或者空行的间距想要小一点,怎么修改公式
改成2也不行, 工资条总共2行,一行是项目信息,一行是员工信息,如果3改成2,还是会空一行,而且员工信息也没有了

正确答案:
=IF(MOD(ROW(),2)=0,OFFSET('1月份'!$A$2,(MOD(ROW()-1,2)>0)*ROUND(ROW()/2,),COLUMN(G82)-1),'1月份'!A$2)
(按我这个直接复制上去就可以了,然后拖动)
因为我不知道你的两个表中数据的起始位置,所以我只能根据你的公式来推敲,对于后面COLUMN(G82)-1)中的G82应该是你原表中的原始数据开始于G列.后面的参数""用'1月份'!A$2代替就不会出现空格了!
记得给我加分!!

若要取消空行就将公式中的3改为2。
=IF(MOD(ROW(),2),OFFSET('1月份'!$A$2,(MOD(ROW()-1,2)>0)*ROUND(ROW()/2,),COLUMN(G82)-1),"")
公式无法改变行高。

不要空行吧公式中的3改成1就号了
=IF(MOD(ROW(),2),OFFSET('1月份'!$A$2,(MOD(ROW()-1,2)>0)*ROUND(ROW()/2,),COLUMN(G82)-1),"")

不是公式问题,是行高,右键点左侧边栏,选择行高选项

以上公式都会出现空行.因为if函数的条件mod(row(),)都有为0的时候(false).除非条件判断都为true,但这样就没有必要用if函数了.直接用中间offset把3改成2就行了.