僅需一個(gè)公式讓Excel按人頭打出工資條2016/5/14 19:53:44 | 來源:中國(guó)教育在線 | 發(fā)布者: | 查看:1866次

使用Excel按人頭制作工資條,網(wǎng)上有兩個(gè)解決方案,一個(gè)是利用Word的“郵件合并”功能,另一個(gè)是利用VBA來實(shí)現(xiàn)。

用“郵件合并” 功能操作雖說不難,但數(shù)據(jù)過多時(shí)也很麻煩;用VBA處理起來倒是很方便,但幾十行的程序也夠初學(xué)者忙活的。經(jīng)過一番試驗(yàn),筆者找出了一個(gè)比較簡(jiǎn)單的方法,只需一個(gè)公式就可以按人頭打印出工資條來。

新建一Excel文件,在sheet1中存放工資表的原始數(shù)據(jù),假設(shè)有N列。第一行是工資項(xiàng)目,從第二行開始是每個(gè)人的工資。

第一行是工資項(xiàng)目,從第二行開始是每個(gè)人的工資。

在sheet2中我們來設(shè)置工資條。根據(jù)實(shí)際情況,工資條由三行構(gòu)成,一行對(duì)應(yīng)工資項(xiàng)目,一行對(duì)應(yīng)一個(gè)人的工資數(shù)據(jù),然后是一個(gè)空行用來方便切割。這樣三行構(gòu)成一個(gè)工資條。工資項(xiàng)目處在行號(hào)除以3余數(shù)為1的行上;空行處在行號(hào)能整除3的行上。以上兩行不難設(shè)置,關(guān)鍵是工資數(shù)據(jù)行,牽扯到sheet1與 sheet2中數(shù)據(jù)的對(duì)應(yīng),經(jīng)分析不難看出“sheet1中的數(shù)據(jù)行=INT((sheet2中的數(shù)據(jù)行+4)/3)”。

這樣我們?cè)趕heet2的A1單元格中輸入公式“=IF(MOD(ROW(),3)=0,"",IF(MOD(ROW(),3)=1,Sheet1!A$1,INDEX(Sheet1!$A:$N,INT((ROW()+4)/3),COLUMN())))”。確認(rèn)后選擇A1單元格,把鼠標(biāo)放在A1單元格的右下角,鼠標(biāo)變成“+”時(shí),向右拖動(dòng)鼠標(biāo)自動(dòng)填充至N列,這樣工資條中的第一行就出來了。選定A1:N1,把鼠標(biāo)放在N1單元格的右下角,鼠標(biāo)再次變成“+”時(shí),向下拖動(dòng)鼠標(biāo)自動(dòng)填充到數(shù)據(jù)的最后一行,工資條就全部制作完成了。

該公式運(yùn)用IF函數(shù),對(duì)MOD函數(shù)所取的引用行號(hào)與3的余數(shù)進(jìn)行判斷。如果余數(shù)為0,則產(chǎn)生一個(gè)空行;如果余數(shù)為1,則固定取sheet1中第一行的內(nèi)容;否則運(yùn)用INDEX函數(shù)和INT函數(shù)來取Sheet1對(duì)應(yīng)行上的數(shù)。

最后來設(shè)置一下格式,選定A1:N2設(shè)上表格線,空行不設(shè)。然后選定A1:N3,拖動(dòng)N3的填充柄向下自動(dòng)填充,這樣有數(shù)據(jù)的有表格線,沒有數(shù)據(jù)的沒有表格線。最后調(diào)整一下頁邊距,千萬別把一個(gè)工資條打在兩頁上。怎么樣,還滿意吧?

效果

凡本站注明“稿件來源:新科教育”的所有圖文音視頻,版權(quán)均屬新科所有,任何媒體、網(wǎng)站或個(gè)人未經(jīng)本網(wǎng)協(xié)議授權(quán)不得轉(zhuǎn)或以其他方式復(fù)制發(fā)表。已獲得本站協(xié)議 授權(quán)的媒體、網(wǎng)站,在下載使用時(shí)必須注明“稿件來源:新科教育”,違者本站將依法追究責(zé)任。
熱門課程
  • 您的電話:

您好,新科教育精品課程
找到了感興趣的課程!