客户对账清单,记录着几十个客户的各种数据。

希望将每个客户的数据引用到模板里面,每个客户生成一个表。

这个问题,用普通的复制粘贴也能实现,就是非常繁琐,需要复制粘贴无数次。
这种有两种比较常用的解决方案,一个是借助Word邮件合并,另一个是借助VBA,今天卢子就分享这个VBA代码。
VBA有一个好处,就是设置完模板,以后就能一键生成,一劳永逸。运行代码,短短几秒就全部生成对账单。

使用VBA的,都需要启用所有宏。

源代码:
Sub 对账单()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For X = Sheets.Count To 3 Step -1
Sheets(X).Delete
Next
With Sheets("客户对账清单")
For X = 2 To .Cells(Rows.Count, 3).End(3).Row
Sheets("模板").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = .Cells(X, 4)
[B1] = .Cells(X, 3)
[B2] = .Cells(X, 4)
[E11] = .Cells(X, 5)
[E12] = .Cells(X, 6)
[E13] = .Cells(X, 7)
[E14] = .Cells(X, 16)
Next
.Select
End With
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub