返回目录:excel表格制作
经常在网上看到有人说,VBA早已过时了,这是真的吗?其实,对于极度依赖OFFICE三件套,特别是Excel的使用达人来说,如果能够学会VBA,那对工作的提升真的不是一星半点的了,而且VBA也不是人们想像的那样难学,只要你能用心去坚持学习,肯定能有所收获的。
现在小编来给大家分享一个案例:有个朋友是做人力的,有一天公司老板跟他说,公司里的人所有工牌都要换新的,要重新设计,于是老板就给他一个标准模版,现在他要将公司所有员工的个人信息都按照模版的模式填上去,然后打印。
PS:他完全是没有一点VBA基础的,就一新手,当然这种情况他也不知道怎么处理好。
如果你碰到这种情况呢?你会如何去处理?其实非常简单 ,我们一起来看看。
PS:我们上图给大家演示的数据比较少,但如果大数据的时候那节省的时间是相当多的。
代码如下:
Sub 胸卡()
With Sheets("员工资料")
h = .[a1].End(xlDown).Row
pah = ThisWorkbook.Path & "\\员工照片\\"
For i = 1 To h - 1
x = (i - 1) Mod 2
y = ((i + 1) \\ 2) - 1
Set txt = Sheets("员工胸卡").Shapes.AddTextbox(1, x * 170, y * 130, 160, 120)
sr = Chr(10) & "梁山水浒集团" & Chr(10) _
& "序号:" & .Cells(i + 1, 1) & Chr(10) _
& "姓名:" & .Cells(i + 1, 2) & Chr(10) _
& "星相:" & .Cells(i + 1, 3) & Chr(10) _
& "绰号:" & .Cells(i + 1, 4)
txt.TextFrame.Characters.Text = sr
Sheets("员工胸卡").Shapes.AddPicture pah & .Cells(i + 1, 1) & ".jpg", 1, 1, txt.Left + 85, txt.Top + 5, 70, 110
Next
End With
End Sub
知识点:
用VBA来插入文本框和参数基本循环语句FOR……NEXT
大家能看懂上面的代码吗?如果遇到同样的问题大家会处理了吗?当我们要一次性打印几千甚至几万个客户信息时,我们只需要按照实际情况将模版设计好,改一下里面的代码就OK了。