当前位置:主页 > 会计电算化 > 正文

用Excel制作工资条的两种简单方法

时间:2012-03-26 10:46 作者:会计学习网 次阅读

【内容概况】方法一:排序法 第一步:打开工资表在工资表最后一空白列输入1,2,3(注:输入的数字与工资表的行数相同)(图1)。 第二步:在刚输入的数字下面向下输入1.1,2.1,比上面的数据少一行,本列在K9中输入1.1(图2)。 第三步:在K列任何一个单元格中单击左键单击工......

方法一:排序法
  第一步:打开工资表→在工资表最后一空白列输入1,2,3……(注:输入的数字与工资表的行数相同)(图1)。

  第二步:在刚输入的数字下面向下输入1.1,2.1……,比上面的数据少一行,本列在K9中输入1.1(图2)。

  第三步:在K列任何一个单元格中单击左键→单击工具栏上的升序排列按钮→选择工资表→编辑→定位→定位条件选择“空值”→确定。
  第四步:在编辑栏中输入=A$1→按住Ctrl键不放敲回车键。
  第五步:在单元格K15下方输入1.01,2.01……一直输入到6.01→单击工具栏上的升序排列按钮→删除K列的数据。加一下边框便大功告成了(图3)。

  方法二:函数法
  第一步:打开工资表→单击Sheet2标签→在Sheet2工作表的A1单元格中输入=IF(MOD(ROW(),3)=0,"",IF(MOD(ROW(),3)=1,Sheet1!A$1,INDEX(Sheet1!$A:$N,INT((ROW()+4)/3),COLUMN())))→向后拖到J1单元格(注:拖的长度应与原表长度相同)(图4)。

  第二步:选择A1:J1区域向下拖→拖到第20行即可(注:拖的时候可能拖多或拖少,这时要看一下原表)→加一下边框便成功了(图5)。

另外一种方法:
工资条的特点分析
  首先让我们看看工资条都有些什么特点。
  1.工资条头可能一行,也可能两行,根据不同企业工资栏目需求而定。但相同处是每一项条目(或者一个工人的工资信息)具有一个条头,条头具有指定数目的重复性。
  2.每一项条目中间有一个空行,方便裁剪。
  根据以上特点,我们可以初步拟定工资条头部制作方案:
  首先建立“工资明细表”,用于储存员工工资表信息,也用于平时编辑和汇总。
  其次建立“工资条目表”,用于引用工资信息,同时产生工资条形式之工资目。
  需要用到的函数可以因人而异,有很多公式都可以达成目的,但最后选择目标是效率最高又易于理解者。
  现在,我们通过两个实例向大家详解工资条头的Excel设计过程,并分析其中技巧,希望望大家能从中受益,举一反三,设计出适合各自需求的Excel工资计算公式。
  单行工资条头之设计
  先看下面的数据,这是一个简易的单行条头工资信息摘录(数据随机生成,非实际工资),见图1。

  利用此表数据,我们可以通过函数公式来引用数据,生成需要的工资条形式。
  步骤与公式如下:
  1.进入“单行表头工资条”工作表。
  2.选中单元格B1,输入以下公式:
  =CHOOSE(MOD(ROW(),3)+1,“”,单行表头工资明细!A$1,OFFSET(单行表头工资明细!A$1,ROW()/3+1,))
  3.选中单元格B1,鼠标置于单元格右下角,当箭头变成十字形时(图2)

  则向右拉至J1单元格。然后再选中B1:J1向下拉,直至公式结果出现空白。此时工资条效果见图3。

  4.基本达到目的了,但表格还没有边框,打印则不太美观。现在为它加上边框:选中B1:J2,并点击工具栏边框按钮中的田字形按钮添加边框;再点击大方框按钮(图4),使工资表条目四周边框显示粗一些,比较美观。

  5.选择B1:J3单元格,向下拖拉,直至有数据的最后一行。最后效果见图5。

  公式解释:
  =CHOOSE(MOD(ROW(),3)+1,“”,单行表头工资明细!A$1,OFFSET(单行表头工资明细!A$1,ROW()/3+1,))
  1.CHOOSE函数是选择函数,支持30个参数。第一个参数是选择序号(数值),其余参数是被选值。第一个参数是N则结果返回其余参数中第N个数值。
  2.MOD函数是求余数函数,支持两个参数,第一个参数是被除数,第二个参数是除数,结果返回余数。
  3.ROW函数是返回指定行行号之函数,若省略参数时则返回当前行。
  4.OFFSET函数是返回偏移量之函数。支持五5参数,分别是[参照区域]、[行数]、[列数]、[高度]、[宽度]。
  5.“”表示空白,返回空。
  本公式巧妙动用MOD和ROW函数产生一个循环的序列2/3/1/2/3/1/2/3/1,再通过CHOOSE函数参数的变化动态地引用工资明细表的数据,其中“”的作用是当前行行号为3的倍数时返回空,从而产生一个空白行,方便制作工资条后裁剪。
  当然,实现功能还有很多公式,如用以下IF函数实现等,各位用户自己去多摸索吧:
  =IF(MOD(ROW(),3)=1,单行表头工资明细!A$1,IF(MOD(ROW(),3)=2,OFFSET(单行表头工资明细!A$1,ROW()/3+1,0),“”))
  双行工资条头设计
  先看数据如图6。

  双行条头工资条和单行条头实现方法基本相同,仅仅是公式有些差异。现暂列如下:
  =CHOOSE(MOD(ROW(),4)+1,“”,双行表头工资明细!A$1,双行表头工资明细!A$2,OFFSET(双行表头工资明细!A$1,ROW()/4+2,))
  输入公式后向后拉再向下拉至末行,然后通过前面介绍的方法设置边框,其中部分单元格需去掉左边框或者右边框,使之显得美观。最后结果如下见图7。

1
2
3