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(\ 'Selection.Copy 'Rows(studio).Select
'Selection.Insert Shift:=xlDown 'xu = xu + 1 'Next
'Application.CutCopyMode = False
xustudio = ActiveSheet.UsedRange.Rows.Count - 2 '根据使用的区域,判断数据的行数 xu = 2
For zz = 1 To xustudio studio = zz + xu
If ActiveSheet.UsedRange.Rows.Count >= ActiveSheet.Rows.Count Then '判断是否到表格底部 MsgBox \已到表格底部,无法添加表头!\提示\ Exit Sub Else
Application.ScreenUpdating = False ActiveSheet.Rows(\ Selection.Copy
ActiveSheet.Rows(studio).Select Selection.Insert Shift:=xlDown xu = xu + 1
Application.CutCopyMode = False End If Next End Sub
(2) 输入完成后,关闭VBA编辑窗口返回工作表状态,执行‘工具--宏--宏’中的‘添加打印工资表头’即可完成自动添加。
打印完毕,如果需要删除刚刚添加的表头,恢复到原先样式可进行如下操作:
(1) 执行“工具→宏→Visual Basic编辑器”命令,进入“Visual Basic编辑”窗口。执行“插入→模块”命令,插入一个模块(如“模块2”),双击“模块2”在窗口右边展开“模块2(代码)”编辑窗口,输入如下代码:
Sub 删除多余工资表头()
'========下面的代码适合Excel2000/Excel2003版================================ 'xuustudio = [A65536].End(xlUp).Row '根据A列的文字,判断数据的行数 'For xu = 1 To xxstudio - 2 Step 2 ' studio = xustudio - xu ' Rows(studio).Select
' Selection.Delete Shift:=xlUp 'Next
xustudio = ActiveSheet.UsedRange.Rows.Count '根据使用的区域,判断数据的行数 For xu = xustudio To 2 Step -1
Application.ScreenUpdating = False
If Cells(xu, 1) = Cells(1, 1) Then '与A1单元格进行比较 ActiveSheet.Rows(xu).Select Selection.Delete Shift:=xlUp End If Next
End Sub
(2) 输入完成后,关闭VBA编辑窗口返回工作表状态,执行‘工具--宏--宏’中的‘删除多余工资表头’即可删除通过‘添加打印工资表头’生成的工资表头,只保留第一行的表头内容。
当然,如果工作中经常需要使用上述两个宏,可以通过自定义工具栏的方式,将两个宏添加到工具栏中,来提高操作的速度。 二、当工资表表头行数为两行时:
(1) 执行“工具→宏→Visual Basic编辑器”命令,进入“Visual Basic编辑”窗口。执行“插入→模块”命令,插入一个模块(如“模块1”),双击“模块1”在窗口右边展开“模块1(代码)”编辑窗口,输入如下代码:
Sub 添加打印工资表头() '
'描述:从第二行数据开始,给每一行添加第一行的数据表头 '========下面的代码适合Excel2000/Excel2003版=======
'xustudio = [A65536].End(xlUp).Row - 3 '根据A列的文字,判断数据的行数
'xu = 2
'For zz = 2 To xustudio 'studio = zz + xu 'Rows(\ 'Selection.Copy
'Rows(studio).Select
'Selection.Insert Shift:=xlDown 'xu = xu + 2 'Next
'Application.CutCopyMode = False
xustudio = ActiveSheet.UsedRange.Rows.Count - 2 '根据使用的区域,判断数据的行数 xu = 2
For zz = 2 To xustudio studio = zz + xu
If ActiveSheet.UsedRange.Rows.Count >= ActiveSheet.Rows.Count Then '判断是否到表格底部
MsgBox \已到表格底部,无法添加表头!\提示\ Exit Sub Else
Application.ScreenUpdating = False ActiveSheet.Rows(\ Selection.Copy
ActiveSheet.Rows(studio).Select Selection.Insert Shift:=xlDown xu = xu + 2
Application.CutCopyMode = False End If Next End Sub
(2) 输入完成后,关闭VBA编辑窗口返回工作表状态,执行‘工具--宏--宏’中的‘添加打印工资表头’即可完成自动添加。
打印完毕,如果需要删除刚刚添加的表头,恢复到原先样式可进行如下操作: