2016-11-08 43 views
1

我是新来的excel,现在我正在为员工开发假期跟踪模板。但我面临的问题是,当我添加一列到我的工作表左侧(ID列)第一个日期单元格变成“02”(本月的第二天),但我希望它是“01” 。我已经尝试过,但我无法改变这一点。所以我想知道是否有人可以帮助我。
这是我的功能: * $ B $ 3和$ B $ 1单元格等于1,$ B $ 2等于2016
只是为了清楚表明我的第一列(A)是名称,第二列(B )是“01”(或由下面的函数生成的月份的第一天)。第三列(C)是“02”等等......但是在名称列之前添加一列ID后,我看不到“01”了。公式不会给我“01”

=IF(AND((COLUMN()-1)>31*($B$3-1),MONTH(DATE($B$2+INT(($B$3+$B$1)/12),INT((COLUMN()-1)/31.001)+$B$1,ROUNDUP(MOD(COLUMN()-1,31.001),0)))=ROUNDUP(MOD($B$1+$B$3-1,12.01),0)),ROUNDUP(MOD(COLUMN()-1,31.001),0),"") 

Here is the screenshot

+0

请附上片拍摄的图像,了解 – bzimor

+0

截图附 – raiden007

回答

1

你的公式具有柱()函数字面取决于列数。所以,当你插入一个新的列到左侧,公式列部分增加1

既然你添加一个新列,更改所有COLUMN() - 1COLUMN() - 2公式应该给你正确的结果。

+0

感谢的人!有效。 – raiden007

0

使用此:

=IF(AND((COLUMN()-2)>31*($B$3-1),MONTH(DATE($B$2+INT(($B$3+$B$1)/12),INT((COLUMN()-2)/31.001)+$B$1,ROUNDUP(MOD(COLUMN()-2,31.001),0)))=ROUNDUP(MOD($B$1+$B$3-1,12,01),0)),ROUNDUP(MOD(COLUMN()-2,31.001),0),"") 
相关问题