Excel如何每打印一次单元格内容变一次
来源:网络收集 点击: 时间:2024-05-12模型:sheet1中,已经设置好了打印区域。要求每打印一次,单元格B2中的日期就增加一天。

Alt+F11,打开VBE,双击sheet1工作表,以确认后续的代码是在sheet1中执行。

复制如下代码到右侧的空白区域,然后按F5执行代码即可实现每打印一张,B2的日期增加一天。
Sub m()
For i = 1 To 100
ActiveSheet.PrintOut copies:=1
Cells(2, 2) = Cells(2, 2) + i
Next
End Sub

代码详解:
1.Sub m()——这是宏名,无需理会;
2.For i = 1 To 100——这是控制打印次数,后面的100就是打印的页数,可以通过更改这个数值,来控制打印多少页;
3.ActiveSheet.PrintOut copies:=1——这是打印当前页的代码,无需理会;
4.Cells(2, 2) = Cells(2, 2) + i——这里的Cells(2,2)就是单元格B2,其中第一个2是行数,第二个2是列数,更改这两个数值,就可以控制让哪个单元格的数值变动;
5.Next——继续循环,无需理会;
6.End Sub——结束宏,无需理会。
单元格内容依次调用数据库数据1/4模型:还是上述中的sheet1中的B2单元格,需要每打印一次,从sheet2中的A1开始往下引用一次数据库中的内容。

Alt+F11,打开VBE,双击sheet1工作表,以确认后续的代码是在sheet1中执行。

复制如下代码到右侧的空白区域,然后按F5执行代码即可实现每打印一张,B2的日期依次调用sheet2中A列的日期。
Sub m()
For i = 1 To Sheets(sheet2).Range(A65536).End(3).Row
ActiveSheet.PrintOut copies:=1
Cells(2, 2) = Sheets(sheet2).Cells(i, 1)
Next
End Sub

代码详解如下:
1.Sub m()——宏名,无需理会;
2.For i = 1 To Sheets(sheet2).Range(A65536).End(3).Row——根据sheet2中的A列的数据决定打印份数,即A列有多少航,打印多少份;如果指定打印份数,则将Sheets(sheet2).Range(A65536).End(3).Row替换为打印份数;
3.ActiveSheet.PrintOut copies:=1——打印代码,无需理会;
4.Cells(2, 2) = Sheets(sheet2).Cells(i, 1)——前面是B2单元格,后面是sheets(sheet2)这是sheet2的工作表名,如果是其他名称,将sheet2替换为实际工作表名,后面的cells(i,1)即随着i的变化,以此变为A列从第一行往下的数据。
5.Next——继续循环,无需理会;
6.End Sub——结束宏,无需理会。
注意事项以上只是讲解了最简单的两种情况;其实万变不离其宗,任何类似的情况,只是添加一些控制单元格内容变化的代码即可;如有需要,可以再问我
EXCEL打印变化打印VBA打印单元格变化版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_746208.html