如何通过EXCEL宏功能实现打印选定内容
我想在“名册”里录入需要变动的人员信息,然后选上录入好的一行或多行,点“打印选定个人审批表”,就会自动套用“审批表”打印出来,我以前有别的格式的表格是有这个功能,只知道是...
我想在“名册”里录入需要变动的人员信息,然后选上录入好的一行或多行,点“打印选定个人审批表”,就会自动套用“审批表”打印出来,我以前有别的格式的表格是有这个功能,只知道是用宏功能做的。因为不会做,所以求助高手帮忙。
展开
3个回答
展开全部
这是个比较复杂的过程,思路如下:
1)审批表中,将名册中待打印行的行号放在A1单元格,通过offset函数将各项需打印的数据显示到标准表的格式中。比如C5要填姓名,则=offset(名册!$A$1,A1-1,1), G5要填职务,则=offset(名册!$A$1,A1-1,2)
2)通过代码更改审批表!A1的值,打印名册中的对应单行或连续行的数据。
具体步骤:
1)在审批表中设置打印区域
2)录制一个宏,打印审批表页,保存下来,起个名比如叫PrintForm,以便在以下代码中调用
3)设置审批表中的公式:A1输入个测试值9;按上面提到的方法用offset函数设置每个单元格的公式,“=offset(名册!$A$1,A1-1,”这部分都是一样的,只有第3个参数(偏移列数)不同。在名册中对应第n列,这参数就填n-1的值。比如姓名在第2列,则填1;职务在第3列,则填2。
4)编一个宏,如下:
Sub PrintAll()
Dim rng As Range, R As Integer, I As Integer, C As Integer
Set rng = Selection
R = rng.Row
C = rng.Rows.Count
For I = 1 To C
Sheets("审批表").Range("A1").Value = R + I - 1
Calculate
PrintForm
Next
End Sub
5)新建个按钮,把上面的宏指定给这个按钮。
OK,现在,选上待打印区域(连续选择,不能隔行选择),按按钮就可以打印了
1)审批表中,将名册中待打印行的行号放在A1单元格,通过offset函数将各项需打印的数据显示到标准表的格式中。比如C5要填姓名,则=offset(名册!$A$1,A1-1,1), G5要填职务,则=offset(名册!$A$1,A1-1,2)
2)通过代码更改审批表!A1的值,打印名册中的对应单行或连续行的数据。
具体步骤:
1)在审批表中设置打印区域
2)录制一个宏,打印审批表页,保存下来,起个名比如叫PrintForm,以便在以下代码中调用
3)设置审批表中的公式:A1输入个测试值9;按上面提到的方法用offset函数设置每个单元格的公式,“=offset(名册!$A$1,A1-1,”这部分都是一样的,只有第3个参数(偏移列数)不同。在名册中对应第n列,这参数就填n-1的值。比如姓名在第2列,则填1;职务在第3列,则填2。
4)编一个宏,如下:
Sub PrintAll()
Dim rng As Range, R As Integer, I As Integer, C As Integer
Set rng = Selection
R = rng.Row
C = rng.Rows.Count
For I = 1 To C
Sheets("审批表").Range("A1").Value = R + I - 1
Calculate
PrintForm
Next
End Sub
5)新建个按钮,把上面的宏指定给这个按钮。
OK,现在,选上待打印区域(连续选择,不能隔行选择),按按钮就可以打印了
更多追问追答
追问
我企鹅陆陆伍零叁肆叁柒,我想把表格给你传过去,然后你帮我做一下好吗?麻烦你了,谢谢
追答
发我邮箱吧,1_jason@sohu.com
我没企鹅
另外,你用的是2003版还是2007以上版的excel?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询