当前位置:文档之家› VBAEXCEL中的工资条打印代码

VBAEXCEL中的工资条打印代码

VBAEXCEL中的工资条打印代码
VBAEXCEL中的工资条打印代码

,VBA EXCEL 中的工资条代码:从工资表中自动生成工资条

Public Const ROWSTART As Integer = 3

Public GongZiBiao As String

Sub MakeGongzitiao()

Dim I, HJ1COL, HJ2COL, ZJCOL As Integer screenUpdateState =

Application.ScreenUpdating statusBarState = Application.DisplayStatusBar calcState = Application.Calculation eventsState = Application.EnableEvents displayPageBreakState = ActiveSheet.DisplayPageBreaks ' 注:这是工作表级的设置'关闭一些Excel 功能使代码运行更快Application.ScreenUpdating = False Application.DisplayStatusBar = False Application.Calculation = xlCalculationManual

Application.EnableEvents = False ActiveSheet.DisplayPageBreaks = False ' 注:这是工作表级的设置

For Each oMyVar In ThisWorkbook.Sheets sheetsnames = https://www.doczj.com/doc/ba12231083.html, + "

" + sheetsnames

Next oMyVar

Dim HJS(50) As Integer

Dim hjcaption(50) As String

ZJCOL = 0 titlerow = 0 XHCOL = 0 GongZiBiao = "" XMCOL = 0

For j = 1 To ThisWorkbook.Sheets.Count

If Sheets(j).Name <> " 工资条" Then

Set XH = Sheets(j).UsedRange.Find(" 序号")

If Not XH Is Nothing Then lastcol = Sheets(j).UsedRange.Columns.Count

titlerow = XH.Row() XHCOL = XH.Column() hjcount = 0

For I = 1 To lastcol

If InStr(Sheets(j).Cells(titlerow, I), " 总") > 0 Then ZJCOL = I

End If

If InStr(Sheets(j).Cells(titlerow, I), " 姓") > 0 Then XMCOL = I

End If

If InStr(Sheets(j).Cells(titlerow, I), " 合") > 0 Then hjcount = hjcount +

1

HJS(hjcount) = I

End If

Next I

If hjcount * ZJCOL * titlerow > 0 Then

GongZiBiao = Sheets(j).Name

Exit For

End If

End If

End If

Next j

If titlerow * hjcount * ZJCOL * Len(GongZiBiao) = 0 Then MsgBox " 没有工资表

或工资表不正确,请正确登记表工资表! End

End If

, 16, " 错误"

If InStr(sheetsnames, " 工资条") = 0 Then ThisWorkbook.Sheets.Add

ThisWorkbook.Sheets(1).Name = " 工资条"

For I = 1 To hjcount

hjcaption(I) = " 合计工资" & Trim(Str(I)) Next I

titlerow = ROWSTART

Else

Set gztxh = Sheets(”工资条”).UsedRange.Find(” 序号")

If Not gztxh Is Nothing Then titlerow = gztxh.Row()

For I = 1 To hjcount

If Sheets("工资条”).Cells(titlerow, I + 2) <> ""And Sheets("

工资条").Cells(titlerow,

I + 2) <> " 工资总额" Then

hjcaption(I) = Sheets(" 工资条").Cells(titlerow, I + 2) Else

hjcaption(I) = " 合计工资" & Trim(Str(I))

End If

Next I

Else

titlerow = ROWSTART

For I = 1 To hjcount hjcaption(I) = " 合计工资" & Trim(Str(I)) Next I

End If

End If

hjcaption(I) = " 工资总额"

Sheets(”工资条”).Cells.Clear

xhfirst = Application.WorksheetFunction.Min(Sheets(GongZiBiao).Columns(XHCOL)) xhlast = Application.WorksheetFunction.Max(Sheets(GongZiBiao).Columns(XHCOL))

With Sheets("工资条").Cells .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .RowHeight = 23

End With

JSS = 0

For XH = xhfirst To xhlast

Set THISROW = Sheets(GongZiBiao).Columns(XHCOL).Find(XH) With Sheets("工资条")

If Not THISROW Is Nothing Then

.Cells(titlerow + JSS * 7 - 1, 1).Value = " 通城职高教职工工资条"

.Cells(titlerow + JSS * 7 - 1, 1).Font.Size = 18 .Cells(titlerow + JSS * 7 - 1, 1).Font.Bold = True Range(.Cells(titlerow + JSS * 7 - 1, 1), .Cells(titlerow + JSS * 7 - 1, hjcount + 3)).Merge

.Cells(titlerow + JSS * 7, 1).Value = " 序号"

If XMCOL > 0 Then

.Cells(titlerow + JSS * 7, 2).Value = " 姓名"

xm = 1

Else

xm = 0

End If

For I = 1 To hjcount + 1

.Cells(titlerow + JSS * 7, I + xm + 1).Value = hjcaption(I)

Next I

.Cells(titlerow + JSS * 7 + 2, hjcount + xm).Value = " 通城职高教务处打印"

.Cells(titlerow + JSS * 7 + 2, hjcount + xm).Font.Size = 14

.Cells(titlerow + JSS * 7 + 2, hjcount + xm).Font.Bold = True

Range(.Cells(titlerow + JSS * 7 + 2, hjcount + xm), .Cells(titlerow + JSS * 7 + 2, hjcount + xm + 2)).Merge

.Cells(titlerow + JSS * 7 + 3, hjcount + xm).Value = "=now()"

Range(.Cells(titlerow + JSS * 7 + 3, hjcount + xm), .Cells(titlerow + JSS * 7 + 3, hjcount + xm + 2)).Merge

.Cells(titlerow + JSS * 7 + 1, 1).V alue = XH

If XMCOL > 0 Then

.Cells(titlerow + JSS * 7 + 1, 2).Value = "=" + GongZiBiao + "!" + NTOC(XMCOL) +

Trim(Str(THISROW.Row()))

End If

For I = 1 To hjcount

.Cells(titlerow + JSS * 7 + 1, I + xm + 1).Value = "=" + GongZiBiao + "!" + NTOC(HJS(I)) +

Trim(Str(THISROW.Row()))

Next I

.Cells(titlerow + JSS * 7 + 1, I + xm + 1).Value = "=" + GongZiBiao + "!" + NTOC(ZJCOL) +

Trim(Str(THISROW.Row()))

Range(.Cells(titlerow + JSS * 7 + 4, 1), .Cells(titlerow + JSS * 7 + 4, hjcount + xm +

2)).Borders(xlEdgeBottom).LineStyle = xlDot

With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow + JSS * 7 + 1, hjcount + xm +

2)).Borders(xlEdgeLeft)

.LineStyle = xlDouble

.Weight = xlThick .ColorIndex = xlAutomatic

End With

With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow + JSS * 7 + 1, hjcount + xm + 2)).Borders(xlEdgeTop)

.LineStyle = xlDouble

.Weight = xlThick .ColorIndex = xlAutomatic

End With

With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow

2)).Borders(xlEdgeBottom)

.LineStyle = xlDouble

.Weight = xlThick

.ColorIndex = xlAutomatic End With

.FooterMargin = Application.InchesToPoints(0.2)

.BottomMargin = Application.InchesToPoints(0.34)

.TopMargin = Application.InchesToPoints(0.29) .FitToPagesWide = 1 + JSS * 7 + 1, hjcount + xm + With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow

2)).Borders(xlEdgeRight)

.LineStyle = xlDouble

.Weight = xlThick

.ColorIndex = xlAutomatic

End With

With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow

2)).Borders(xlInsideVertical)

.LineStyle = xlContinuous

.Weight = xlHairline

.ColorIndex = xlAutomatic

End With

With Range(.Cells(titlerow + JSS * 7, 1), .Cells(titlerow + JSS * 7 + 1, hjcount + xm + + JSS * 7 + 1, hjcount + xm +

+ JSS * 7 + 1, hjcount + xm +

2)).Borders(xlInsideHorizontal)

.LineStyle = xlContinuous

.Weight =

xlHairline .ColorIndex =

xlAutomatic End With

JSS = JSS + 1

End If

End With

Next XH

colwidth = 0

For I = 1 To hjcount + 3

colwidth = colwidth + Sheets(" 工资条 ").Columns(I).Width

Next I

With Sheets (” 工资条 ”).PageSetup

.HeaderMargin = Application.InchesToPoints(0.23)

.FitToPagesTall = 1

If (594 - colwidth) / 2 > 20 Then

.LeftMargin = (594 - colwidth) / 2

.RightMargin = (594 - colwidth) / 2

End If

End With

Application.ScreenUpdating = screenUpdateState

Application.DisplayStatusBar = statusBarState

Application.Calculation = calcState

Application.EnableEvents = eventsState

ActiveSheet.DisplayPageBreaks = displayPageBreaksState ' 注:这是工作表

End Sub

Function NTOC(ByVal ncol As Integer) As String '本函数将列号转换为单元格列名ncol = ncol - 1

NHEAD = ncol \ 26

NTAIL = ncol - NHEAD * 26

If NHEAD = 0 Then

HEAD = ""

Else

HEAD = Chr(NHEAD + 64)

End If

NTOC = HEAD + Chr(NTAIL + 65)

End Function

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Set mytools = https://www.doczj.com/doc/ba12231083.html,mandBars.FindControls

For Each myGZT In mytools

If myGZT.Tag = " 工资条工具" Or myGZT.Tag = " 工资条菜单" Then myGZT.Delete End If

Next myGZT

End Sub

Private Sub Workbook_Open()

If https://www.doczj.com/doc/ba12231083.html,mandBars("Formatting").Controls(1).Tag <> " 工资条工具" Then

Set mytools = https://www.doczj.com/doc/ba12231083.html,mandBars("Formatting").Controls.Add(msoControlButton, 1, , 1) mytools.Caption = " 生成工资条(&J)" mytools.Tag = " 工资条工具"

Else

Set mytools = https://www.doczj.com/doc/ba12231083.html,mandBars("Formatting").Controls(1)

End If

'没有工资条按钮则在格式工具栏开头增加工资条按钮

Dim mypicture, mypicturemask As Boolean mypicture = False

Set MyFile = CreateObject("Scripting.FileSystemObject")

If MyFile.FileExists(ThisWorkbook.Path & "\BMP\RMB.BMP") Then

Set myico = stdole.StdFunctions.LoadPicture(ThisWorkbook.Path & "\BMP\RMB.BMP") mytools.Picture = myico

If MyFile.FileExists(ThisWorkbook.Path & "\BMP\RMBMASK.BMP") Then

Set myicoMASK = stdole.StdFunctions.LoadPicture(ThisWorkbook.Path &

"\BMP\RMBMASK.BMP")

mytools.Mask = myicoMASK

End If

'设置对象图标屏蔽,使背景透明mypicture = True

End If

'设置对象图标

If Not mypicture Then mytools.FaceId = 395

End If

mytools.OnAction = https://www.doczj.com/doc/ba12231083.html, & "!MAKEGONGZITIAO" mytools.Tag = " 工资条工具" '菜单

If https://www.doczj.com/doc/ba12231083.html,mandBars("Tools").Controls(1).Tag <> " 工资条菜单" Then

Set mytools1 = https://www.doczj.com/doc/ba12231083.html,mandBars("Tools").Controls.Add(msoControlButton, 1, , 1) mytools1.Caption = " 生成工资条(&J)" mytools1.Tag = " 工资条菜单"

Else

Set mytools1 = https://www.doczj.com/doc/ba12231083.html,mandBars("Tools").Controls(1)

End If

mytools1.OnAction = https://www.doczj.com/doc/ba12231083.html, & "!MAKEGONGZITIAO"

End Sub

工资条设置方法(图文教程)

工资条设置方法 使用Excel做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供一种方案来操作。 一、妙用排序,轻松打印工资条 工资条的最终结果就是一行工资明细目,一行员工对应的数据,通常做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点可以使用排序轻松实现,具体实现方法如何,就请接着往下看吧。 假设当前工资表中有300行数据,显然使用第一种方法是行不通的。首先复制第一行的工资细目数据,从300行之后的任一行粘贴,并使用填充柄拖动复制300行。 接下来在A列的前面插入两列,第一列使用填充柄输入序号,从1一直拉到N(本例操作时为1000,这个N可根据自己的喜好以及实际需求,基本上只要大于工资表中数据的两倍即可),主要用来打印工资条后下次重新做工资时恢复表格顺序。第二列从第二行开始,依次输入1、3、5、7,然后选中这四个单元格,使用填充柄填充至员工数据结束位置。在下方的工资细目数据区,从第一行依次输入2、4、6、8,然后选中这四个单元格,使用填充柄填充至结束,大致效果如图3所示。

图 3 输入数字,为下一步作准备 执行“数据”→“筛选”→“自动筛选”命令,单击B列的下拉按钮,在弹出的下拉菜单中选择“升序排列”,这样工资条就做好了(如图4)。

图4 最终效果 从上图中可以看出,工资条效果已经实现了,这时将A、B两列隐藏,然后打印,我们的工作就算完成了。等下个月需要使用这张工资表格重新计算工资时,只需要将隐藏的A、B两列取消隐藏,使用“自动筛选”,然后按照A列“升序排列”即可还原原来的顺序。 二、轻松插入工资细目数据行 其实用Excel打印工资条,归根结底就是让Excel制作的工资表格中,一行工资细目数据,一行员工的记录。如果在每一个员工数据的上面插入一行工资细目数据显然我们的要求也就完成了,当然纯手工的一行一行插入显然是个“不可能完成的任务”,这里需要有点小技巧。 第一步:在工资细目的右侧两列中,交叉输入任意数字(主要是为了后面的“空位”空值,所以数字可任意输),然后选中交叉的四个单元格,双击右下角的“填充柄”,使这种格式一直填充至工资表的结束行(如图5)。

用Excel打印工资条(1)

用Excel打印工资条 2002-3-14 0:02:34 Excel Home 职工工资构成非常复杂,往往超过10项,因此每月发工资时要向职工提供一包含工资各构成部分的项目名称和具体数值的工资条。打印工资条时要求在每个职工的工资条间有一空行便于彼此裁开。本模板就是用EXCEL函数根据工资清单生成一便于分割含有工资细目的工资条表格。 本工资簿包含两张工资表。 第1张工资表就是工资清单,称为"清单"。它第一行为标题行包括职工姓名、各工资细目。 第2张工作表就是供打印的表,称为"工资条"。它应设置为每三行一组,每组第一行为标题,第二为姓名和各项工资数据,第三行为空白行。就是说整张表被3除余1的行为标题行,被3除余2的行为包括职工姓名、各项工资数据的行,能被3整除的行为为空行。 在某一单元格输入套用函数"=MOD(ROW(),3)",它的值就是该单元格所在行被3除的余数。因此用此函数能判别该行是标题行、数据行还是空行。 在A1单元格输入公式"=IF(MOD(ROW(),3)=0,"",IF(MOD(ROW(),3)=1,清 单!A$1,"value-if-false"))"并往下填充,从A1单元格开始在A列各单元格的值分别为清单A1单元格的值即姓名、value-if-false、空白,姓名、value-if-false、空白,……。其中value-if-false 表示MOD(ROW(),3)既不等于0又不等于1时,即它等于2时应取的值。它可用如下函数来赋值:"INDEX(清单!$A:$G,INT((ROW()+4)/3),COLUMN())"。INDEX()为一查找函数它的格式为:INDEX(reference,row-num,col-num),其中reference为查找的区域,本例中为清单表中的A到G列,即函数中的"清单!$A:$G",row-num为被查找区域中的行序数即函数中的INT((ROW()+4)/3),col-num为被查找区域中的列序数即函数中的COLUMN()。第2、5、8…….行的行号代入INT((ROW()+4)/3)正好是2、3、4……,COLUMN()在A列为1。因此公式"=INDEX(清单!$A:$G,INT((ROW()+4)/3),COLUMN())"输入A列后,A2、A5、A8……单元格的值正好是清单A2、A3、A4……,单元格的值。这样,表的完整的公式应为 "=IF(MOD(ROW(),3)=0,"",IF(MOD(ROW(),3)=1,清单!A$1,INDEX(清 单!$A:$G,INT((ROW()+4)/3),COLUMN())))"。把此公式输入A1单元格,然后向下向右填充得到了完整的工资条表。 为了表格的美观还应对格式进行设置,一般习惯包括标题、姓名等文字在单元格中要取中,数字要右置,数字小数点位数也应一致,还有根据个人的爱好设置边框。本表格只需对一至三行的单元格进行设置,然后通过选择性格式设置完成全表的设置。 本工作簿的特点是1、不对清单表进行操作保持清单工作表的完整,2、全工作表只有一个公式通过填充得到全表十分方

EXCEL打印工资条

使用Excel做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案,有需要的朋友可以根据自己的实际情况选择一种方案来操作。 一、人少好办事 对于一些小企业或者办公室类型的公司来说,公司全体人数也不多,少的几个人,多的也就十几、二十人的样子,即便是每个人的工资条打成一张纸,也不会造成什么大的浪费,所以我们可以简单设置让其每条记录打印在一张纸上,这样是最简单快捷的方法了。 这里利用的是一种类似的“页眉”的方式实现每一页打印后都有一个“标题行”,这样保证工资的明细项目在工资条上体现,然后每一个“标题行”下方跟一条记录,最后打印出的效果就是工资条了,具体操作如下。 在Excel做好的工资表中,执行“文件”→“页面设置”命令,在打开的“页面设置”对话框中切换到“工作表”标签,单击“顶端标题行”右侧的按钮,在工作表中选择工资表的头部区域,然后单击回车键,使“页面设置”对话框如图1所示,然后单击“确定”按钮使设置生效。 图 1 选择工资表的头部 接下来单击“打印预览”按钮,使工作表呈打印预览状态,然后在“打印预览”对话框中单击“页边距”按钮,使打印预览对话框中显示出调整页边距的虚线,使用鼠标拖动“下边距”虚线至工作表第二行处,即最终效果为页面中显示的只有两行,一行是工资细目,一行是数据(如图 2),接下来就打印吧,打印

出的每页纸中就是一位员工的工资条了。 图 2 拖动下边距 小提示:这种打印工资条的方法是最简单,最安全(不容易出错),最快速的方法,当然弊端就是太浪费纸张了,如果公司人数稍微多一点,就不太适合了,不过你可以试试下面的方法。 二、妙用排序,轻松打印工资条 工资条的最终结果就是一行工资明细目,一行员工对应的数据,通常做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点可以使用排序轻松实现,具体实现方法如何,就请接着往下看吧。 假设当前工资表中有300行数据,显然使用第一种方法是行不通的。首先复制第一行的工资细目数据,从300行之后的任一行粘贴,并使用填充柄拖动复制300行。 接下来在A列的前面插入两列,第一列使用填充柄输入序号,从1一直拉到N(本例操作时为1000,这个N可根据自己的喜好以及实际需求,基本上只要大于工资表中数据的两倍即可),主要用来打印工资条后下次重新做工资时恢复表格顺序。第二列从第二行开始,依次输入1、3、5、7,然后选中这四个单元格,使用填充柄填充至员工数据结束位置。在下方的工资细目数据区,从第一行依次

利用EXCEL和WORD批量打印工资条

打印工资条的简便方法 近来,电脑报上介绍过几次处理工资表、打印工资 条的方法,其中有用EXCEL97做的,有用CCED做 的等等。我不是做劳资工作的,但看了这些有关文 章后,利用WORD2000的“邮件合并”功能实现了工 资条的打印。看到这,如果你原来还没用过“邮件合 并”,那么,就打开计算机,跟我一起做吧。 第一步:准备一个数据库。这个数据库可以是 DBF文件,也可以是MDB文件等等,我们暂用 EXCEL2000做一个小的数据库,文件名为“工资表200106.xls”,(建议朋友们也用EXCEL来做,以充分利用它强大的计算功能和用填充句柄方便复制数据和公式)。如图所示(在这里,只为说明问题,本表可能与实际不太相符)。 第二步:邮件合并。数据库做好后,我们就可以用WORD2000的邮件合并了。打开WORD2000,创建一个文档,如图所示: 在“工具”菜单下找到“邮件合并”并单击, 现邮件合并帮助器,

单击“创建”,出现以下菜单。 单击“套用信函”,出现以下提示框。 我们选择活动窗口。 此时邮件合并帮助器上的数据源项已经点亮,此项为可用。单击 获取数据,出现下拉菜单,单击“打开数据源”。

出现数据源文件选择框,此时在文件类型处点击下拉箭头,选择MS Excel 工作簿(*.xls),找到开始我们做的数据库文件:工资表200106.xls,双击或选择该文件后点击“打开”。 出现窗口

单击“确定”,出现窗口 单击“编辑主文档”。此时,我们可看到,在WORD工具栏上多了一行工具条,即:邮件合并工具条。 将光标放在表格中“编号”下方的单元格中,单击邮件合并工具条上的“插入合并域”,出现以下选项,(这些选项来源于“工资表200106.xls第一行的标题),选“编号”。我们可以看到:在“编号”下方单元格中出现了带书名号的“编号”:《编号》。 编号姓名职务津贴生活补助应发工资水电党费会费小计实发工资 编号 用同样方法,在姓名、职务、津贴……单元格下方分别插入相应合并域,如下图所示。 编号姓名职务津贴生活补助应发工资水电党费会费小计实发工资 编号姓名职务津贴生活补助应发工资水电党费 会费 小计 实发 工资 此时,主控文档编辑已基本完成。请注意:在本表格的下方应该留下两个空行,即有两个回车符,否则邮件合并后每个人的工资条是连在一起的。看一下我们所输入的数据情况,点击邮件合并工具条上的“查看合并数据”,可以看到,主控文档上带书名号的部分已经被替换成相应数据项。 编号姓名职务津贴生活补助应发工资水电党费会费小计实发工资 1 张伟 345 1 2 3 3 390 15 17 点击邮件合并工具条上的“合并选项” 我们可以设置“查询选项”,以筛选我们需要的数据。这里,我

在excel中如何使打印出的每一张工资表上都有表头

在excel中如何使打印出的每一张工资表上都有表头 平常隐藏,打印时显示。 可以使用Excel的“组与分级显示”功能。??选中行(一行一行的选择),选择菜单命令“数据|组和分级显示|组合”(或者按快捷键Alt+Shift+向右方向键).(选择其他行,按F4键。F4键的作用是重复最近的一次命令.这里也可以按Alt+Shift+向右方向键,只不过不如F4来得快捷。)??这时,在行左侧出现(像最小化)标记,并且在工作表的左上方出现1和2,这是分级显示符号。 ?单击某级别的显示符号,可以隐藏或显示下一级的明细数据。我们要利用的正是分级显示符号的这一功能. ?小提示:Alt+Shift+向右方向键实际上是将某行降了一级,如果想让某行升一个级 别,可以按快捷键Alt+Shift+向左方向键,或者选择菜单命令“数据|组和分级显示|取消组合”。 09-04-03|添加评论|打赏 ?0 51888lczh 在表格里做个固定的公式就可以了,我以前做人事的时候.也天天做,800多人的工资考勤不到2天就做完了.没多难的。EXCEL很简单的!学学就会用了! 09-04-03| 添加评论| 打赏 ?0 aaa7652 在菜单“文件”里选择“页面设置”,选择“工作表"在“打印标题”里的“顶端行”的输入框内输入你要每页打印(显示)表头的行号,确定就OK了。 09-04-04|添加评论|打赏 ?0 未来0303 打印表格是很多朋友在工作中常常要面临的任务,这里我们通过实例图解的方式向大家提供一些Excel中实用的打印技巧。??仔细学习并使用这些技巧,可以使我们能更加得心应手地完成工作中的各种打印任务.? 一、在每一页上都打印行标题或列标题? 在Excel工作表中,第一行通常存放这各个字段的名称,如“客户资料表”中的“客户姓名”、

在excel中如何使打印出的每一张工资表上都有表头

在excel中如何使打印出的每一张工资表上都有表头 平常隐藏,打印时显示。 可以使用Excel的“组与分级显示”功能。 选中行(一行一行的选择),选择菜单命令“数据|组和分级显示|组合”(或者按快捷键Alt+ Shift+向右方向键)。(选择其他行,按F4键。F4键的作用是重复最近的一次命令。这里也可以按Alt+Shift+向右方向键,只不过不如F4来得快捷。) 这时,在行左侧出现(像最小化)标记,并且在工作表的左上方出现1和2,这是分级显示符号。 单击某级别的显示符号,可以隐藏或显示下一级的明细数据。我们要利用的正是分级显示符号的这一功能。 小提示:Alt+Shift+向右方向键实际上是将某行降了一级,如果想让某行升一个级别,可以按快捷键Alt+Shift+向左方向键,或者选择菜单命令“数据|组和分级显示|取消组 合”。 09-04-03| 添加评论| 打赏 ?0 51888lczh 在表格里做个固定的公式就可以了,我以前做人事的时候。也天天做,800多人的工资考勤不到2天就做完了。没多难的。EXCEL很简单的!学学就会用了! 09-04-03| 添加评论| 打赏 ?0 aaa7652 在菜单“文件”里选择“页面设置”,选择“工作表”在“打印标题”里的“顶端行”的输入框内输入你要每页打印(显示)表头的行号,确定就OK了。 09-04-04| 添加评论| 打赏 ?0 未来0303

打印表格是很多朋友在工作中常常要面临的任务,这里我们通过实例图解的方式向大家提供一些Excel中实用的打印技巧。 仔细学习并使用这些技巧,可以使我们能更加得心应手地完成工作中的各种打印任务。 一、在每一页上都打印行标题或列标题 在Excel工作表中,第一行通常存放这各个字段的名称,如“客户资料表”中的“客户姓名”、“服务帐号”、“公司名称”等等,我们把这行数据称为标题行(标题列依此类推)。当工作表的数据过多超过一页时,打印出来只有第一页有行标题,这样阅读起来不太方便。 用下面方法可以让每一页都打印行标题: 进入要打印的工作表,选择菜单“文件→页面设置”命令,在弹出的对话框中选择“工作表”选项卡,然后单击“打印标题”区“顶端标题行”文本区右端的按钮,对话框缩小为一行,并返回Excel编辑界面,用鼠标单击一下标题行所在的位置,再单击回车即可。 这时对话框恢复原状,可以看到“顶端标题行”文本框中出现了刚才选择的标题行,核对无误后单击“确定”完成设置。以后打印出来的该工作表的每一页都会出现行标题了。 说明:列标题的设置可仿照操作。若需要要打印工作表的行号和列标(行号即为标识每行的数字,列标为标识每列的字母),勾选“打印”区的“行号列标”复选框即可。 二、只打印工作表的特定区域 在实际的工作中,我们并不总是要打印整个工作表,而可能只是特定的区域,那么应该如何设置呢?请跟着下面的方法进行。 (一)打印特定的一个区域 如果需要打印工作表中特定的一个区域有下面两种方法。 方法1:先选择需要打印的工作表区域,然后选择菜单“文件→打印”命令,在弹出的“打印内容”对话框的“打印内容”区,勾选“选定区域”单选框,再单击“确定”即可。 方法2:进入需要打印的工作表,选择菜单“视图→分页预览”命令,然后选中需要打印的工

OfficeExcel打印工资条多种方案任你选

OfficeExcel 打印工资条多种方案任 你选 Office Excel打印工资条多种方案任你选 使用ExceI做工资统计,是很多中、小企业都会做的,可是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案,有需要的朋友能够根据自己的实际情况选择一种方案来操作。 人少好办事

对于一些小企业或者办公室类型的公司来说,公司全体人数也不多,少的几个人,多的也就十几、二十人的样子,即便是每个人的工资条打成一张纸,也不会造成什么大的浪费,因此我们能够简单设置让其每条记录打印在一张纸上,这样是最简单快捷的方法了。 这里利用的是一种类似的”页眉”的方式实现每一页打印后都有一个”标题行”,这样保证工资的明细项目在工资条上体现,然后每一个”标题行”下方跟一条记录,最后打印出的效果就是工资条了,具体操作如下。 在ExceI做好的工资表中,执行”文件”宀”页面设置”命令在打开的”页面设置”对话框中切换到”工作表”标签,单击”顶端标题行”右侧的按钮,在工作表中选择工资表的头部区域,然后 单击回车键,使”页面设置”对话框如图1所示,然后单击”确定”按钮使设置生效。

图1选择工资表的头部接下来单击”打印预览”按钮,使工作表呈打印预览状态,然后在”打印预览”对话框中单击”页边距”按钮,使打印预览对话框中显示出调整页边距的虚线,使用鼠标拖动”下边距”虚线至工作表第二行处,即最终效果为页面中显示的只有两行,一行是工资细目,一行是数据(如图2),接下来就打印吧,打印出的每页纸中就是一位员工的工资条了。

图2拖动下边距 小提示:这种打印工资条的方法是最简单,最安全(不容易出错),最快速的方法,当然弊端就是太浪费纸张了,如果公司人数稍微多一点,就不太适合了,不过你能够试试下面的方法。 妙用排序,轻松打印工资条 工资条的最终结果就是一行工资明细目,一行员工对应的数据一般做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点能够使用排序轻松实现,具体实现方法如何,就请接着往下看吧。

EXCEL打印工资条(很有借鉴意义)

EXCEL打印工资条(很有借鉴意义) 使用Excel 做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案,有需要的朋友可以根据自己的实际情况选择一种方案来操作。 一、人少好办事 对于一些小企业或者办公室类型的公司来说,公司全体人数也不多,少的几个人,多的也就十几、二十人的样子,即便是每个人的工资条打成一张纸,也不会造成什么大的浪费,所以我们可以简单设置让其每条记录打印在一张纸上,这样是最简单快捷的方法了。 这里利用的是一种类似的“页眉”的方式实现每一页打印后都有一个“标题行”,这样保证工资的明细项目在工资条上体现,然后每一个“标题行”下方跟一条记录,最后打印出的效果就是工资条了,具体操作如下。 在Excel 做好的工资表中,执行“文件”→“页面设置”命令,在打开的“页面设置”对话框中切换到“工作表”标签,单击“顶端标题行”右侧的按钮,在工作表中选择工资表的头部区域,然后单击回车键,然后单击“确定”按钮使设置生效。选择工资表的头部接下来单击“打印预览”按钮,使工作表呈打印预览状态,然后在“打印预览”对话框中单击“页边距”按钮,使打印预览对话框中显示出调整页边距的虚线,使用鼠标拖动“下边距”虚线至工作表第二行处,即最终效果为页面中

显示的只有两行,一行是工资细目,一行是数据接下来就打印吧,打印出的每页纸中就是一位员工的工资条了。拖动下边距 小提示:这种打印工资条的方法是最简单,最安全(不容易出错),最快速的方法,当然弊端就是太浪费纸张了,如果公司人数稍微多一点,就不太适合了,不过你可以试试下面的方法。 二、妙用排序,轻松打印工资条工资条的最终结果就是一行工资明细目,一行员工对应的数据,通常做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点可以使用排序轻松实现,具体实现方法如何,就请接着往下看吧。假设当前工资表中有300 行数据,显然使用第一种方法是行不通的。 首先复制第一行的工资细目数据,从300 行之后的任一行粘贴,并使用填充柄拖动复制300 行。接下来在A 列的前面插入两列,第一列使用填充柄输入序号,从 1 一直拉到N(本例操作时为1000,这个N 可根据自己的喜好以及实际需求,基本上只要大于工资表中数据的两倍即可),主要用来打印工资条后下次重新做工资时恢复表格顺序。第二列从第二行开始,依次输入1、3、5、7,然后选中这四个单元格,使用填充柄填充至员工数据结束位置。在下方的工资细目数据区,从第一行依次输入2、4、6、8,然后选中这四个单元格,使用填充柄填充至结束,大致效果如图 3 所示。输入数字,为下一步作准备执行“数据”→“筛选”→“自动筛选”命令,单击B 列的下拉按钮,在弹出的下拉菜单中选择“升序排列”,这样工资条就做

巧妙利用word给员工分别邮件发送或打印工资条

巧妙利用word给员工分别邮件发送或打印工资条(1) (2008-06-06 21:11:21) 转载 分类:薪酬福利 标签: 制作工资条 word妙用 邮件合并 杂谈 每个月工资条如何发放给大家是一个头疼的事情,因为工资涉及到保密问题,用邮件吧,每个人的邮件内容都有些不一样的地方,人一多就特别容易出错;用打印的吧,难道也是ctrl c ctrl v么,别提做工资表有多耗费时间和脑细胞,光这个发工资条就够让人忙活好长时间的了。使用word的邮件合并功能这些头疼的事情就都解决了。我用的是office2003版本的。 1:建立excel版的工资表,审核无误,保存为salary.xls。(把email也加入到后面,如果要给大家分别发送邮件的话) 注意:第一行就是标题行,别再加别的内容了。 2:建立一个WORD文件,保存为salary.doc,文件内容为你要给员工邮件的内容。 如: :

您好! 08年5月工资已发放,请注意查收。公司已代为扣缴个人所得税。你的工资条如下,如有问题,请于人事部**联系。 祝您工作顺利! **公司人事部 2008年6月5日 好啦,把其中每个人内容不一样的地方空着,下面我们就要用魔法把这些空格分别填满了~ 3:邮件合并 1、在WORD文件上点击“工具”/“信函与邮件”/“邮件合并向导”; 2、在右侧上部“邮件合并”栏中,选择“电子邮件” 3、在右侧下部选择“下一步:正在启动文档” 4、在右侧上部“想要如何设置信函”中选择“使用当前文档” 5、在右侧下部选择“下一步:选取收件人” 6、在右侧上部“选择收件人”中选择“使用现有列表” 7、在右侧中部选择“浏览”,在弹出的“选取数据源”窗口中,找到你第二步建的excel 文件,在弹出的“选择列表”中选择有工资数据的“表” 8、弹出的“邮件合并收件人”窗口,是所有员工的数据,应该与你的工资表一致。每行前边的“√”,代表你选择给“他”发邮件;如果不给他发邮件,请点击取消“√” 9、上一步“确定”之后,在右侧下部选择“下一步:撰写电子邮件”

Excel打印工资条表头(一行两行三行表头)代码

Excel中添加打印工资表头及删除打印工资表头 一、当工资表表头行数为一行时: (1) 执行“工具→宏→Visual Basic编辑器”命令,进入“Visual Basic编辑”窗口。执行“插入→模块”命令,插入一个模块(如“模块1”),双击“模块1”在窗口右边展开“模块1(代码)”编辑窗口,输入如下代码: Sub 添加打印工资表头() ' '描述:从第二行数据开始,给每一行添加第一行的数据表头 '========下面的代码适合Excel2000/Excel2003版======= 'xustudio = [A65536].End(xlUp).Row - 2 '根据A列的文字,判断数据的行数 'xu = 2 'For zz = 1 To xustudio 'studio = zz + xu 'Rows("1:1").Select 'Selection.Copy 'Rows(studio).Select 'Selection.Insert Shift:=xlDown 'xu = xu + 1 'Next 'Application.CutCopyMode = False xustudio = https://www.doczj.com/doc/ba12231083.html,edRange.Rows.Count - 2 '根据使用的区域,判断数据的行数xu = 2 For zz = 1 To xustudio studio = zz + xu If https://www.doczj.com/doc/ba12231083.html,edRange.Rows.Count >= ActiveSheet.Rows.Count Then '判断是否到表格底部MsgBox "已到表格底部,无法添加表头!", , "提示" Exit Sub Else Application.ScreenUpdating = False ActiveSheet.Rows("1:1").Select Selection.Copy ActiveSheet.Rows(studio).Select Selection.Insert Shift:=xlDown xu = xu + 1 Application.CutCopyMode = False End If Next End Sub

Excel中多种打印工资条方法步骤

Excel中多种打印工资条方法步骤 作者:佚名字体:[增加减小] 来源:互联网时间:12-10 09:47:00 我要评论 使用Excel做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案。 使用Excel做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案,有需要的朋友可以根据自己的实际情况选择一种方案来操作。 一、人少好办事 对于一些小企业或者办公室类型的公司来说,公司全体人数也不多,少的几个人,多的也就十几、二十人的样子,即便是每个人的工资条打成一张纸,也不会造成什么大的浪费,所以我们可以简单设置让其每条记录打印在一张纸上,这样是最简单快捷的方法了。 这里利用的是一种类似的“页眉”的方式实现每一页打印后都有一个“标题行”,这样保证工资的明细项目在工资条上体现,然后每一个“标题行”下方跟一条记录,最后打印出的效果就是工资条了,具体操作如下。 在Excel做好的工资表中,执行“文件”→“页面设置”命令,在打开的“页面设置”对话框中切换到“工作表”标签,单击“顶端标题行”右侧的按钮,在工作表中选择工资表的头部区域,然后单击回车键,使“页面设置”对话框如图1所示,然后单击“确定”按钮使设置生效。 图1 选择工资表的头部 接下来单击“打印预览”按钮,使工作表呈打印预览状态,然后在“打印预览”对话框中单击“页边距”按钮,使打印预览对话框中显示出调整页边距的虚线,使用鼠标拖动“下边距”虚线至工作表第二行处,即最终效果为页面中显示的只有两行,一行是工资细目,一行是数据(如图2),接下来就打印吧,打印出的每页纸中就是一位员工的工资条了。 图2 拖动下边距办公软件教程 小提示:这种打印工资条的方法是最简单,最安全(不容易出错),最快速的方法,当然弊端就是太浪费纸张了,如果公司人数稍微多一点,就不太适合了,不过你可以试试下面的方法。 二、妙用排序,轻松打印工资条 工资条的最终结果就是一行工资明细目,一行员工对应的数据,通常做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点可以使用排序轻松实现,具体实现方法如何,就请接着往下看吧。 假设当前工资表中有300行数据,显然使用第一种方法是行不通的。首先复制第一行的工资细目数据,从300行之后的任一行粘贴,并使用填充柄拖动复制300行。 接下来在A列的前面插入两列,第一列使用填充柄输入序号,从1一直拉到N(本例操作时为1000,这个N可根据自己的喜好以及实际需求,基本上只要大于工资表中数据的两倍即可),主要用来打印工资条后下次重新做工资时恢复表格顺序。第二列从第二行开始,依次输入1、3、5、7,然后选中这四个单元格,使用填充柄填充至员工数据结束位置。在下方的工资细目数据区,从第一行依次输入2、4、6、8,然后选中这四个单元格,使用填充柄填充至结束,大致效果如图3所示。

VBAEXCEL中的工资条打印代码

,VBA EXCEL 中的工资条代码:从工资表中自动生成工资条 Public Const ROWSTART As Integer = 3 Public GongZiBiao As String Sub MakeGongzitiao() Dim I, HJ1COL, HJ2COL, ZJCOL As Integer screenUpdateState = Application.ScreenUpdating statusBarState = Application.DisplayStatusBar calcState = Application.Calculation eventsState = Application.EnableEvents displayPageBreakState = ActiveSheet.DisplayPageBreaks ' 注:这是工作表级的设置'关闭一些Excel 功能使代码运行更快Application.ScreenUpdating = False Application.DisplayStatusBar = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ActiveSheet.DisplayPageBreaks = False ' 注:这是工作表级的设置 For Each oMyVar In ThisWorkbook.Sheets sheetsnames = https://www.doczj.com/doc/ba12231083.html, + " " + sheetsnames Next oMyVar Dim HJS(50) As Integer Dim hjcaption(50) As String ZJCOL = 0 titlerow = 0 XHCOL = 0 GongZiBiao = "" XMCOL = 0 For j = 1 To ThisWorkbook.Sheets.Count If Sheets(j).Name <> " 工资条" Then Set XH = Sheets(j).UsedRange.Find(" 序号") If Not XH Is Nothing Then lastcol = Sheets(j).UsedRange.Columns.Count titlerow = XH.Row() XHCOL = XH.Column() hjcount = 0

Excel制作打印工资条全程详解

Excel制作打印工资条全程详解 2009-10-24 09:45 使用Excel做工资统计,是很多中、小企业都会做的,但是如何让工资条打印既快速又漂亮是很多人头痛的问题,下面就提供几种综合解决方案,有需要的朋友可以根据自己的实际情况选择一种方案来操作。 一、人少好办事 对于一些小企业或者办公室类型的公司来说,公司全体人数也不多,少的几个人,多的也就十几、二十人的样子,即便是每个人的工资条打成一张纸,也不会造成什么大的浪费,所以我们可以简单设置让其每条记录打印在一张纸上,这样是最简单快捷的方法了。 这里利用的是一种类似的“页眉”的方式实现每一页打印后都有一个“标题行”,这样保证工资的明细项目在工资条上体现,然后每一个“标题行”下方跟一条记录,最后打印出的效果就是工资条了,具体操作如下。 在Excel做好的工资表中,执行“文件”→“页面设置”命令,在打开的“页面设置”对话框中切换到“工作表”标签,单击“顶端标题行”右侧的按钮,在工作表中选择工资表的头部区域,然后单击回车键,使“页面设置”对话框如图 1所示,然后单击“确定”按钮使设置生效。 图 1 选择工资表的头部 接下来单击“打印预览”按钮,使工作表呈打印预览状态,然后在“打印预

览”对话框中单击“页边距”按钮,使打印预览对话框中显示出调整页边距的虚线,使用鼠标拖动“下边距”虚线至工作表第二行处,即最终效果为页面中显示的只有两行,一行是工资细目,一行是数据(如图 2),接下来就打印吧,打印出的每页纸中就是一位员工的工资条了。 图 2 拖动下边距 小提示:这种打印工资条的方法是最简单,最安全(不容易出错),最快速的方法,当然弊端就是太浪费纸张了,如果公司人数稍微多一点,就不太适合了,不过你可以试试下面的方法。 二、妙用排序,轻松打印工资条 工资条的最终结果就是一行工资明细目,一行员工对应的数据,通常做好的工资表都是只有第一行有数据工资细目,下面全部是数据,如果能从第二行开始,每一行的结尾都添加一行工资细目的数据就好了。这一点可以使用排序轻松实现,具体实现方法如何,就请接着往下看吧。 假设当前工资表中有300行数据,显然使用第一种方法是行不通的。首先复制第一行的工资细目数据,从300行之后的任一行粘贴,并使用填充柄拖动复制300行。 接下来在A列的前面插入两列,第一列使用填充柄输入序号,从1一直拉到N(本例操作时为1000,这个N可根据自己的喜好以及实际需求,基本上只要大

用Excel快速打印工资单

用Excel快速打印工资单 对于财务人员来说打印工资单是必不可少的工作,由于工资单要裁开发给每个人,所以要求每条工资数据上面都要有工资表的表头,而在Excel 2003中编制的表格,一般却只能在每一页的首行中显示表头。在此为大家介绍一种可以任意定制工资单格式的快速打印方法。 1.基本设置 打开Excel,右击Sheet1工作表标签选择“重命名”,将其重命名为“工资表”用来保存工资数据(图1)。再把Sheet2工作表重命名为“工资单”,选中A1单元格把字号设置为24,以此来增加首行的高度以便下一步输入标题,然后参照工资表的列数设置一张工资单(图2)。 注意:在设计工资单时只能通过调大字号或在单元格内按Alt+回车键增加空行的办法调整行高,直接拖动调整的行高无法复制会影响最终效果。 2.输入公式

在D1单元格输入公式="龙海市第一建设有限公司"&MONTH(工资表!$B$2)&"月份工资单"(图2),此公式会根据工资表!B2单元格中的日期自动生成标题,你也可以把其中的“工资表!$B$2”换成NOW()来自动获取当前月份。在K4输入公式=工资表!$H$2,并设置相应的日期格式。 在A3输入公式=OFFSET(工资表!A$3,ROW(A4)/4,0),选中A3拖动其填充柄(选中区右下角的黑色方块)到L3单元格把公式复制填充到B3:L3中。公式中A4为单张工资单的最后一行的第一个单元格,4为单张工资单所占用的行数。这公式表示引用“工资表”中以A3为起点向下偏移ROW(A4)/4的单元格数据。 3.批量生成 选中A1:L4复制,再选中A1:Ln区域按Ctrl+C键进行粘贴,在此n=工资单总数×每张工资单占用的行数(4)。假设要打印的工资单有200张,则应选中A1:L800进行粘贴。粘贴后马上就可以看到全部的工资单了(图3)。 技巧:当工资单很多时,要直接选中大片区域比较麻烦,你可以在工具栏的“名称框”中直接输入区域代码如:A1:L800,回车即可直接选中A1:L800区域。

Excel实现批量打印工资条-推荐下载

Excel实现批量打印工资条每月月初那几天时间(发工资时间)是财务MM最为苦恼的几天,她们除制作工资报表外还要制作工资条(每人一条),由于我公司员工有190多人,按照传统的复制、粘贴、排列方法她们要进行很长版面的重复操作,如果其中有某个数据要改动,牵涉的版面范围就很广,工作量很大。我“自告奋勇”为她们制作了一套工资条批量打印的模板,解决了她们的苦恼,这种方法也适用与 大多数企业,下面向大家介绍。 财务MM给我提供了工资条格式(图1),由于工资条比较窄小,如果用Word的邮件合并功能,按默认设置只能一张纸打印一个工资条,浪费纸张不说,效率也不高,如果将工资条复制几份放在同一A4纸页面的话对邮件合并的数据源则要进行Excel实现批量打印工资条 每月月初那几天时间(发工资时间)是财务MM最为苦恼的几天,她们除制作工资报表外还要制作工资条(每人一条),由于我公司员工有190多人,按照传统的复制、粘贴、排列方法她们要进行很长版面的重复操作,如果其中有某个数据要改动,牵涉的版面范围就很广,工作量很大。我“自告奋勇”为她们制作了一套工资条批量打印的模板,解决了她们的苦恼,这种方法也适用 与大多数企业,下面向大家介绍。 财务MM给我提供了工资条格式(图1),由于工资条比较窄小,如果用Word的邮件合并功能,按默认设置只能一张纸打印一个工资条,浪费纸张不说,效率也不高,如果将工资条复制几份放在同一A4纸页面的话对邮件合并的数据源则要进行多纵列排版,数据源有变动需要修改的时候也很不方便,而且工资条里含有“金额大写”项目,用邮件合并功能也比较麻烦,经过综合考虑和比较,决定用Excel2003来制作带金额大写且能满幅面批量打印的工资条 模板。 经询问得知工资报表为每月必做,决定采用调用工资报表数据来实现。通过测量,发现一张A4纸纵向放4个工资条比较合适。 一、修改工资报表 为方便数据调用和发放工资时能“对号入座”,我们在报表前插入两列,分别命名为“序号”和“工资条编号”,在A3单元格里输入=row()-2,在B3中输入=row()+2005049998,同时选中A3和B3单元格,往下拖动填充句柄到最后一行以产生能自动调整的序号和工资条编号。修改后报表格式如图2所示(其中某些无须用到的数据列已隐藏)。 二、制作工资条打印界面

VBA EXCEL中的工资条打印代码

,VBA EXCEL中的工资条代码:从工资表中自动生成工资条 Public Const ROWSTART As Integer = 3 Public GongZiBiao As String Sub MakeGongzitiao() Dim I, HJ1COL, HJ2COL, ZJCOL As Integer screenUpdateState = Application.ScreenUpdating statusBarState = Application.DisplayStatusBar calcState = Application.Calculation eventsState = Application.EnableEvents displayPageBreakState = ActiveSheet.DisplayPageBreaks '注:这是工作表级的设置'关闭一些Excel功能使代码运行更快 Application.ScreenUpdating = False Application.DisplayStatusBar = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ActiveSheet.DisplayPageBreaks = False '注:这是工作表级的设置 For Each oMyVar In ThisWorkbook.Sheets sheetsnames = https://www.doczj.com/doc/ba12231083.html, + " " + sheetsnames Next oMyVar Dim HJS(50) As Integer Dim hjcaption(50) As String ZJCOL = 0 titlerow = 0 XHCOL = 0 GongZiBiao = "" XMCOL = 0 For j = 1 To ThisWorkbook.Sheets.Count If Sheets(j).Name <> "工资条" Then Set XH = Sheets(j).UsedRange.Find("序号") If Not XH Is Nothing Then lastcol = Sheets(j).UsedRange.Columns.Count titlerow = XH.Row() XHCOL = XH.Column() hjcount = 0

相关主题
文本预览
相关文档 最新文档