VBA——固定资产标签自动产生模板

VBA——固定资产标签自动产生模板VBA 实操 目录 前言 二 代码部分 1 实现清除功能 2 实现模板的复制与粘贴 3 实现内容的复制粘贴 最后一步 命令按钮 总结 文件 链接 https pan baidu com s 1ns7wv6I0eKj 提取码 lipf 前言

大家好,我是讯享网,很高兴认识大家。

VBA实操

目录

前言

二、代码部分

1.实现清除功能

2.实现模板的复制与粘贴

 3.实现内容的复制粘贴

 最后一步,命令按钮

总结


文件


前言

最近通过VBA完成了在Excel中根据明细中的信息自动生成标签的功能,今天通过固定资产标签做一次模拟。


一、Excel设计明细和标签的样板


讯享网

上面的模板仅供参看,最好在标签打印中提前设置好大小,目前我设置的是大小,大概一行三个。

 

二、代码部分

1.实现清除功能

新增一个模块

Sub 清除() '获取标签页打印最大行数 num = Sheets("标签页打印").UsedRange.Rows.Count '清空打印内容 Sheets("标签页打印").Range("A1:L" & num).clear End Sub

讯享网

此功能是为了每次打印前能够清除工作簿内容,避免出现错误

2.实现模板的复制与粘贴

实现原理就是通过复制标签模板里设置好的内容,然后在标签打印的时候粘贴出来

讯享网Sub 标签模板(i As Integer, j As Integer) Dim sourceRange As Range Dim destinationRange As Range '设置源区域 Set sourceRange = Sheets("标签模板").Range("A1:D5") '设置目标区域 Set destinationRange = Sheets("标签页打印").Cells(i, j) '复制源区域的内容 sourceRange.Copy '粘贴到目标区域,并且设置格子的大小 destinationRange.PasteSpecial Paste:=xlPasteAll For Each sourceCell In sourceRange.Cells Set destinationCell = destinationRange.Cells(sourceCell.Row - sourceRange.Row + 1, sourceCell.Column - sourceRange.Column + 1) destinationCell.RowHeight = sourceCell.RowHeight Next sourceCell End Sub

 3.实现内容的复制粘贴

实现原理:通过读取对应行数的数据,将数据插入到标签打印页的指定位置

Sub 标签打印(a As Integer, i As Integer, j As Integer) Dim start As Integer start = 1 Sheets("标签页打印").Cells(i, j + 1) = Sheets("固定资产明细").Range("a" & a + start) Sheets("标签页打印").Cells(i + 1, j + 1) = Sheets("固定资产明细").Range("b" & a + start) Sheets("标签页打印").Cells(i + 2, j + 1) = Sheets("固定资产明细").Range("c" & a + start) Sheets("标签页打印").Cells(i + 3, j + 1) = Sheets("固定资产明细").Range("d" & a + start) Sheets("标签页打印").Cells(i + 4, j + 1) = Sheets("固定资产明细").Range("e" & a + start) End Sub

 最后一步,命令按钮

在标签打印页创建一个打印按钮,并且编辑打印按钮触发的代码

讯享网Private Sub CommandButton1_Click() Dim i As Integer Dim j As Integer Dim num As Integer Dim t As Integer Dim a As Integer 清除 num = InputBox("请输入打印标签数量:") For a = 1 To num i = ((a - 1) \ 3) * 6 + 1 t = a Mod 3 If t = 1 Then j = 1 ElseIf t = 2 Then j = 5 ElseIf t = 0 Then j = 9 End If Call 标签模板(i, j) Call 标签打印(a, i, j) Next End Sub 

总结

这是我第一次用VBA做的实际应用,其中的代码是我根据Java开发的经验,参照VBA的语法来实现的,希望能作为参考

小讯
上一篇 2025-03-16 19:41
下一篇 2025-02-26 11:40

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/57881.html