×

Loading...
Ad by
  • 予人玫瑰,手有余香:加拿大新天地工作移民诚聘求职顾问&行业导师!
Ad by
  • 予人玫瑰,手有余香:加拿大新天地工作移民诚聘求职顾问&行业导师!

不管是会计软件带的还是单独的,Payroll 软件很便宜的。象Paymate,一年才几百刀 ( 200~300 ?)。一次性set up,什么都解决了,各种 tracking,报告,T4, ROE,应有尽有。不必这么费劲搞 Excel。

打报告给老板,申请预算,自己搞个project,安装调试,都有软件方的技术支持,很快就搞定。一劳永逸。:))
Sign in and Reply Report

Replies, comments and Discussions:

  • 用Excel track payroll 的问题,请教有经验的兄弟姐妹们^_^
    公司现在用Excel track 所有员工的工资, 月底有commission. 以前的会计做法是在Excel 里做成pay stub 的形式,每半个月输入gross pay, tax deduction, CPP, EI, YTD 的gross, tax, CPP EI 在pay stub 里自动累计。 但是下个payroll 就要复制前一个payroll的所有Pay stub, 删除前一个的所有current gross pay, tax, CPP EI, 保留YTD的数据。然后 输入新的数据,自动生成新的YTD数据。

    我觉得这个复制,粘贴,删除的过程很繁碎,也容易出错。想改成用payroll calculator 纪录数据,然后自动生成pay stub. 但有个技术难题,使每个月都做一张payroll calculator 呢,还是一共就做到一个sheet里?怎么track YTD数据,自动生成pay stub。

    请高手解惑,多谢!
    • 我记得以前上学的时候有做过excel pay stub,用的是macro,具体的现在不记得了,你可以试着去youtube上面搜搜,再不行去图书馆借本excel查找下。
    • 你多少员工?10,20个和100,200,或者1000,2000,我们给的建议不同 +1
    • 我大概整理了一个思路,首先为每个EMPLOYEE开一个EXCEL WORKBOOK, 在每个WORKBOOK 里每个PAY PERIOD产生一个WORK SHEET 去记录每个PAY PERIOD 的PAY STUB 和 YTD AMT.
      然后,另外产生一个WORK BOOK做CALCULATOR. 用EMPLOYEE ID 或NAME 去打开要写入的EXCEL WORKBOOK, 用PAY PERIOD 去打开WORK SHEET. 这样应该可以用CACULATOR记录PAY STUB 和 YTD AMT 了。
      • 能不能所有的employee做在一个worksheet里面,一人一行。一个pay period一个sheet.然后第一个worksheet作为YTDamount的计算?
        • 这个最接近我的想法,问题是
          一个worksheet 包含一个pay period 所有employee compensation 的细节,当然也包括YTD的数据,我可以用vlookup在新的sheet生成此次pay stub。但是下一个pay period的worksheet 怎么包含上一个的YTD数据呢?还得copy past ? 就是怎么在不同pay period 的各自worksheet里持续的track 各种YTD数据呢?
          • 你的要求是不是 一个worksheet既要有这个月的,还有有ytd的?
            如果这样话,你YTD的数据可以从那个YTD的sheet上得到。
        • 工资管理不仅是做PAY STUB, 将来还要做T4和T4 summary,以及考虑到人员流动,我想每人一本WORK BOOK 会比较易于管理。
      • 100,200个员工的话还是用access吧。10,20用excel就算了,反正也就26个pay period
    • 花几百块上个工资系统,别用EXCEL了。系统技术比起人工便宜多了。非要用你的会VBA自己写。比如建一个快捷按钮,每两周一按自动生成新页面。
      • 嗯, 严重同意,大概59个员工,开通Quickbooks payroll 功能每月多少钱呢?用这个track CPP EI 挺好, 不用担心到了maximum还不知道。
        有用过Quickbooks Payroll的前辈么? 好上手么?
    • 不管是会计软件带的还是单独的,Payroll 软件很便宜的。象Paymate,一年才几百刀 ( 200~300 ?)。一次性set up,什么都解决了,各种 tracking,报告,T4, ROE,应有尽有。不必这么费劲搞 Excel。
      打报告给老板,申请预算,自己搞个project,安装调试,都有软件方的技术支持,很快就搞定。一劳永逸。:))
    • 其实挺简单的,一个worksheet记录所有员工的monthly pay,column heading是月份,row是员工。另一个worksheet做成pay stub,以月份做变量,offset function计算YTD。
      • 我Google 了一下, 不是很明白怎么用offset function 计算yTD呢? 是在下一个payroll period用offset 找到上一个period 地worksheet 中的YTD数据么? 请指教
        • offset是可以给出一个array的地址的,放在sum里面做成dynamic的array就可以算YTD。也可以用address function放在sum里面计算YTD。如果还不清楚,把你的raw data和pay stub格式发一个给我。
        • offset的话,最简单的列子,你可以选中 cell A1,然后计算A1往下n个范围的sum,n等于一共的月份。你就用Access算了,才59个人,
          用Access多简单,把report设置好,每个月输一下数据,report直接出来了。又不是excel 奥运会,非要用Excel。把工作用最简单有效的方法做好就行了。
        • I created a sample pay stub in excel using 3 different formulas to calculate YTD. All 3 work so you can choose the one you like most. See the link for the sample excel. Note that data in blue is input parameter.
          Formula 1=SUM(OFFSET('Gross Pay'!$B$2,MATCH($B$1,'Gross Pay'!$B$2:$B$28,0)-1,1,1,MATCH($B$2,'Gross Pay'!$B$2:$N$2,0)-1))
          Formula 2=SUM(INDEX('Gross Pay'!$B$2:$N$28,MATCH($B$1,'Gross Pay'!$B$2:$B$28,0),2):INDEX('Gross Pay'!$B$2:$N$28,MATCH($B$1,'Gross Pay'!$B$2:$B$28,0),MATCH($B$2,'Gross Pay'!$B$2:$N$2,0)))
          Formula 3=SUM(INDIRECT(ADDRESS(MATCH($B$1,'Gross Pay'!$B$2:$B$28,0)+1,3,,,A5)):INDIRECT(ADDRESS(MATCH($B$1,'Gross Pay'!$B$2:$B$28,0)+1,MATCH($B$2,'Gross Pay'!$B$2:$N$2,0)+1,,,A5)))
          • 为什么这么麻烦,直接sum不就可以了?
            • 是可以直接sum啊,但是如果你想go back一个period呢?Say, in period 7, employee C wants to reprint pay stub period 3,难道还把已经输入后面几个period删除了?
              做一个model的宗旨就是越dynamic越好,要保存的各种版本越少越好,事先把各方面都考虑全了,以后的修改就少了。
              • 和programming一样,个人的preference,只要完成任务就好。既然你提到model什么的,我想如果enable interactive calculation的更简单
                第一行current period,第二行以下累积显示prior period(s)的数据。平行的第二行以下显示running total。

                lz在第一行输入current period的数据,以前的自动显示在第二行以下的表里。59个employees一人一个tab,第一个tab用name,href之类的做个hyperlink。

                做成的效果
                第一行 $$$$ $$$ $$$ $ $$$$ ($是楼主需要输入的当月数据)

                第二行 并列第二行(这里显示每个period的YTD数据)
                period 10 $$$ $$ $$$ Period 10 $$$ $$ $$ $$$
                period 9 $$ $$ Period 9 $$ $$
                。。。。。(每次你输入新的内容,以前就会自动移到下面)
                • 我同意一个工作可以有很多方法去实现,每个人喜欢的方法不同。说到model,不是那种大型的非常复杂的才叫model,对我来说,任何一个需要用excel来完成的都可以叫model,这个model可以是我们每天要生成的报表,也可以是楼主提到的pay stub。
                  本文发表在 rolia.net 枫下论坛至于你提到的这个方法,用到投行更新每日数据,其calculation speed是快过offset,index和indirect。正因为其计算效率高,被需要大量计算大型数据的报表(如投行)使用,但在楼主的pay stub里,我认为适用性不高。

                  1. 楼主提问的目的是想要减少工作量和出错率。为每个employee建立tab的工作量可不小,如果是一个员工turnover rate很高的公司,那简直就是nightmare。而且输入当月数据的时候需要在employee tab之间切换,出错几率大大增加。

                  2. pay stub中YTD计算量非常小,offset等function中的速度不快的缺点几乎可以忽略不计,而其dynamic的优点非常突出。

                  不知道楼上有没有download我的sample看过,还是只是看了我list出来的3个formula就得出太过复杂的结论。我的方法是把所有员工所有period都输入到同一张表格中,然后在pay stub的tab里用员工和period作为变量(就是formula里的$B$1和$B$2),用offset加match找出需要计算的range然后sum起来。整个workbook里只用到了有数的几个tab,要是愿意,完全可以只用到raw data和stub两个tab。offset,index和indirect各有优缺点,视情况选择喜欢的formula。为了减少出错可能,我用data validation作出了employee和period的list。我想这样一个model在使用上也是很dummy的,楼主vacation的期间可以很快教会别人使用然后放心度假。

                  总结,每个人喜欢的方法不同,每个model的细节情况也不一样,只要能够在comfortable level完成任务就行。这个comfortable level每个人的定义也不一样,有人只关心front page,有人关心工作量,有人关心错误率,有人关心计算效率,我只是在我有限的知识范围内提供我认为的最简单有效的方案,力求能够平衡各个comfortable point。如果楼主能够用到哪怕一小点,我都觉得很高兴。

                  p.s.谢谢楼上跟贴讨论,我google了一下这个方法,发现关于calculation speed的讨论对我还是很有帮助的。我平时建model的时候的确很喜欢用lookup family的function,发现在比较复杂的model中大量使用这类function的确影响速度,并且model比较脆弱。更多精彩文章及讨论,请光临枫下论坛 rolia.net
        • 我说的那个enable interactive calculation做投资的用的挺多的,他们要显示所有历史数据什么的,如果你感兴趣可以google一下别人的template, 然后改一下就可以用到payroll上了。