「製作工資條」一勞永逸的法子,你絕對需要

說起工資條,對於一些中小企業的HR夥伴來說,還是會經常製作並列印。如果手工製作,那將是一個極具挑戰性的工作。為了簡化製作過程,我們可以利用OFFSET函式來自動生成工資條。一勞永逸的法子,你絕對需要!

「製作工資條」一勞永逸的法子,你絕對需要

來!上栗子~

「製作工資條」一勞永逸的法子,你絕對需要

開玩笑了啦~

「製作工資條」一勞永逸的法子,你絕對需要

上圖為員工工資表的原始資料,該工作表的名稱為“工資表”。現在要為每名員工建立一個工資條,每個工資條包括兩行內容:一行為所有員工都相同的表頭資訊,如“姓名”“部門”等;另一行則包括員工的個人工資資訊。另外不同員工的工資單之間要留一個空行。

哼哼~方法如下,拿走不謝

在一個新工作表的A1單元格中輸入一個數組公式後按【Ctrl+Shift+Enter】組合鍵,然後向右,再向下填充,可以得到符合上面格式要求的工資條。輸入的陣列公式如下:

=IF(MOD(ROW(),3),OFFSET(工資表!$A$1,MOD(ROW()-1,3)*ROUND(ROW()/3,),COLUMN(A1)-1),“”)

然後就得到下面的工資條啦~

「製作工資條」一勞永逸的法子,你絕對需要

是不是找到一勞永逸的感覺了呢。

我是人生關鍵點的分隔線~

下面我來給需要進階的小夥伴分享下上面的公式

有一丟丟複雜,請筆記做起來~

「製作工資條」一勞永逸的法子,你絕對需要

MOD(ROW(),3)為IF函式中的判斷條件,它用於判斷當前行的行號是否能被3整除。如果整除(返回0),那麼取IF函式的第3個引數中的值,即為空(“”);如果不能整除(不返回0),公式將返回OFFSET(工資表!$A$1,MOD(ROW()-1,3)*ROUND(ROW()/3,),COLUMN(A1)-1)的結果。

公式OFFSET(工資表!$A$1,MOD(ROW()-1,3)*ROUND(ROW()/3,),COLUMN(A1)-1)中,使用了OFFSET函式對名為“工資表”的工作表中的固定A1單元格進行偏移操作。其中,公式MOD(ROW()-1,3)*ROUND(ROW()/3,)返回OFFSET函式的第2個引數的值,MOD(ROW()-1,3)返回陣列{0;1;2;0;1;2;0;1;2……};ROUND(ROW()/3,)返回陣列{0;1;1;1;2;2;2;3;3……},那麼公式MOD(ROW()-1,3)*ROUND(ROW()/3,)則返回以上兩個常量陣列的乘積,得到陣列{0;1;2;0;2;4;0;3;6……},它表示目標工作表中不同位置單元格偏移的行數。COLUMN(A1)-1返回OFFSET函式的第3個引數的值,確定單元格向右側偏移的數量。

總體來說,就是透過OFFSET函式依次提取名稱為“工資表”的工作表中的資料,然後透過IF函式判斷哪行留空,用於生成即為工資條之間的空行。

恭喜看到這裡的小夥伴~

「製作工資條」一勞永逸的法子,你絕對需要

我是

Excel大表姐666

,關注我持續分享更多excel技巧。一起成長,一起華麗轉身。