|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 xmtdabc 于 2013-1-10 11:08 编辑
问题:是按商品名称命名建立新表,不重复建立,没有新增商品是不建表,现在是没有新增商品时,建一个模板表。如何能控制住?
代码如下(本论坛找查的):
Sub 添加工作表()
Dim arr, i&, Myr&, dic_sheet As Object, sheet As Worksheet '定义变量
Application.ScreenUpdating = False '关闭屏幕刷新
Set dic_sheet = CreateObject("Scripting.Dictionary") '定义dic_sheet 为字典对象
With Sheet1
Myr = .Cells(Rows.Count, 3).End(3).Row '找到A列最后有数据的行
arr = .Cells(11, 1).Resize(Myr, 11).Value '定义数组arr
End With
For Each sheet In Worksheets '遍历工作表
dic_sheet.Add sheet.Name, "" '把工作表名存入字典
Next
For i = LBound(arr) To UBound(arr) '在数组arr中循环
If Not dic_sheet.exists(arr(i, 3)) Then '如果字典中不存在这个工作表名
Sheet8.Copy After:=Sheets(Worksheets.Count) '就在已有工作表的后面添加一个新工作表sheet8是模板
Sheets(Worksheets.Count).Name = arr(i, 3) '把这个新工作表重新命名
dic_sheet(arr(i, 1)) = ""
End If
Next
Set dic_sheet = Nothing '在内存中清除字典
Sheet1.Activate '激活SHEET1工作表
Application.ScreenUpdating = True '开启屏幕刷新
End Sub
简单进销存.rar
(280.51 KB, 下载次数: 10)
|
|