僅需一個公式 讓Excel按人頭打出工資條-IT浪潮-北方網
新聞 | 天津 | 民生 | 廣電 | 津抖雲 | 微視 | 讀圖 | 文娛 | 體育 | 圖事 | 理論 | 志願 | 專題 | 工作室 | 不良信息舉報
教育 | 健康 | 財經 | 地產 | 天津通 | 旅游 | 時尚 | 購物 | 汽車 | IT | 親子 | 會計 | 訪談 | 場景秀 | 發布系統

"津雲"客戶端
  您當前的位置 : 北方網  >  IT浪潮  >  滾動新聞
關鍵詞:

僅需一個公式 讓Excel按人頭打出工資條


http://www.enorth.com.cn  2007-07-05 15:24

  作者:孫述亮原創 出處:天極Yesky軟件頻道

  使用Excel按人頭制作工資條,網上有兩個解決方案,一個是利用Word的『郵件合並』功能(詳見這裡),另一個是利用VBA來實現。

  用『郵件合並』功能操作雖說不難,但數據過多時也很麻煩;用VBA處理起來倒是很方便,但幾十行的程序也夠初學者忙活的。經過一番試驗,筆者找出了一個比較簡單的方法,只需一個公式就可以按人頭打印出工資條來。

  新建一Excel文件,在sheet1中存放工資表的原始數據,假設有N列。第一行是工資項目,從第二行開始是每個人的工資。


第一行是工資項目,從第二行開始是每個人的工資。

  在sheet2中我們來設置工資條。根據實際情況,工資條由三行構成,一行對應工資項目,一行對應一個人的工資數據,然後是一個空行用來方便切割。這樣三行構成一個工資條。工資項目處在行號除以3餘數為1的行上;空行處在行號能整除3的行上。以上兩行不難設置,關鍵是工資數據行,牽扯到sheet1與sheet2中數據的對應,經分析不難看出『sheet1中的數據行=INT((sheet2中的數據行+4)/3)』。

  這樣我們在sheet2的A1單元格中輸入公式『=IF(MOD(ROW(),3)=0,"",IF(MOD(ROW(),3)=1,Sheet1!A$1,INDEX(Sheet1!$A:$N,INT((ROW()+4)/3),COLUMN())))』。確認後選擇A1單元格,把鼠標放在A1單元格的右下角,鼠標變成『+』時,向右拖動鼠標自動填充至N列,這樣工資條中的第一行就出來了。選定A1:N1,把鼠標放在N1單元格的右下角,鼠標再次變成『+』時,向下拖動鼠標自動填充到數據的最後一行,工資條就全部制作完成了。

  該公式運用IF函數,對MOD函數所取的引用行號與3的餘數進行判斷。如果餘數為0,則產生一個空行;如果餘數為1,則固定取sheet1中第一行的內容;否則運用INDEX函數和INT函數來取Sheet1對應行上的數。

  最後來設置一下格式,選定A1:N2設上表格線,空行不設。然後選定A1:N3,拖動N3的填充柄向下自動填充,這樣有數據的有表格線,沒有數據的沒有表格線。最後調整一下頁邊距,千萬別把一個工資條打在兩頁上。怎麼樣,還滿意吧?(下載樣表)


效果

編輯:趙國棟 天極yesky
[進入IT論壇]
請您文明上網、理性發言並遵守相關規定,在注冊後發表評論。
 北方網精彩內容推薦
無標題文檔
天津民生資訊
天氣交通 天津福彩 每月影訊 二手市場
空氣質量 天津股票 廣播節目 二手房源
失物招領 股市大擂臺 天視節目 每日房價
熱點專題
北京奧運聖火傳遞和諧之旅 迎奧運 講文明 樹新風
解放思想 乾事創業 科學發展 同在一方熱土 共建美好家園
2008天津夏季達沃斯論壇 《今日股市觀察》視頻
北方網網絡相聲頻道在線收聽 2008高考招生簡章 復習衝刺
天津自然博物館館藏精品展示 2008年天津中考問題解答
帶你了解08春夏服飾流行趨勢 完美塑身 舞動肚皮舞(視頻)
C-NCAP碰撞試驗—雪佛蘭景程 特殊時期善待自己 孕期檢查
熱點新聞排行 財經 體育 娛樂 汽車 IT 時尚 健康 教育

Copyright (C) 2000-2021 Enorth.com.cn, Tianjin ENORTH NETNEWS Co.,LTD.All rights reserved
本網站由天津北方網版權所有