我做了一个奖状模板
我录制了一个宏打印
我在A1里输入“1”,让后打印第一个奖状。
输入“2”,然后打印第二个奖状。
这里的“1,2”是提前编号的序号,输入不同的序号,奖状里会显示不同的人名。
现在想求高手,帮我修改一下宏文件实现自动打印功能:
在A3和A5里分别输入开始和结束的序号,如5和10,就能自动打印第5个到第10个人的奖状。
谢谢!!
我录制的宏文件如下:
Sub 打印1to3()
'
' 打印1to3 Macro
'
'
Range("A1").Select
ActiveCell.FormulaR1C1 = "1"
Range("C1").Select
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
Range("A1").Select
ActiveCell.FormulaR1C1 = "2"
Range("C1").Select
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
Range("A1").Select
ActiveCell.FormulaR1C1 = "3"
Range("D1").Select
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
End Sub
把你的宏改成如下形式:
Sub 打印(m As String)
'
' 打印 m 页 Macro
'
'
Range("A1").Select
ActiveCell.FormulaR1C1 = m
Range("C1").Select
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
Range("A1").Select
End Sub
另加一个如下的宏:
Sub 打印多页()
'在单元格A3中输入起始页号,单元格A5中输入终止页号
Dim i, j As Integer
i = Application.ActiveSheet.Cells(3, 1).Value
j = Application.ActiveSheet.Cells(5, 1).Value
If i = j Then
打印 (i)
ElseIf i > j Then
steps = -1
For k = i To j Step steps
打印 (i)
Next k
Else
For k = i To j
打印 (i)
Next k
End If
End Sub
在单元格设置好数值,执行打印多页宏
谢谢你的指教,第一个在宏里面有显示,不能打印。
第二个可以打印,但是打印的结果把第三页打了3编,4,5页面有打印,请帮忙修改一下!
谢谢你在百忙中给予解答!!!
不知道你表中是什么情况啊
就是你打印的代码中,那个A1,C1 第三页是D1 这是???
为什么第一、二页是C1 而第三页是D1??
没数据表,不好整
你好,下面是请柬表
第一张表:客人每当
第二张表是请柬草图:
第二张表的序号A1和请柬人名用vlookup函数链接完毕。
现在,想通过A3和A5分别设置请柬的开始和结束页,实现自动打印。
也就是打印第三到第五个人的三张请柬。
没有啊???
追问网上给了好几个方案,感觉你的第二种方案最接近我的要求,现在现在存在的问题是,每打印一张,A1里的序号没有增加。因为我的打印内容是通过A1的序号变化的。
看你是否有时间,把你的第二套方案修改一下,谢谢!
最好的办法是你把你的两个文件发过来,我搞清楚它的打印方法。然后再回给你。
追问问题解决了,你的方案虽然没有成功,也谢谢你耐心的解答。