如何在excel 用VBA插入多个工作表并命名。要用到宏。给分给分~
在工作簿中插入49张工作表。将该工作簿的工作表依次命名为“第一周”、“第二周”、“第三周”……“第五十二周”。请给我详细的编程过程哈···。不要说一张一张插入再一张一张改...
在工作簿中插入49张工作表。将该工作簿的工作表依次命名为“第一周”、“第二周”、“第三周”……“第五十二周”。请给我详细的编程过程哈···。
不要说一张一张插入再一张一张改名这样的方法哈。。。。。。。。用VBA编程~~~~~ 展开
不要说一张一张插入再一张一张改名这样的方法哈。。。。。。。。用VBA编程~~~~~ 展开
4个回答
展开全部
具体操作步骤如下:
1、第一步,打开Excel表格,在主界面按Alt+f11下快捷键,如图所示。
2、第二步,进入到VBA编辑器,点击上面菜单栏中的插入,再选择【模块】,如图所示。
3、第三步,在弹出的模块窗口中,输入下面的代码:
Option Explicit
Sub addwork()
Sheets.Add after:=Sheets(Sheets.Count)
End Sub,
如图所示。
4、第四步,输入好后,在编辑器的左侧,输入模块的名称。如图所示。
5、第五步,关闭编辑器窗口,返回到表格中,点击上方菜单栏中的视图,再点击下方菜单栏的宏,选择查看宏,如图所示。
6、最后一步,在弹出的宏窗口中,单击宏名,再单击【执行】就可以了,如图所示。
展开全部
增加sheet的命令符为sheets.add
完整的表达式为Sheets.Add(Before, After, Count, Type)
before或after可分别设置增加的sheet在某个工作表前或表后,一般不用同时指定。如果同时指定则不要造成矛盾。
count,指增加的工作表个数。
type指增加的工作表类别。
如果批量增加,则需要指定定义sheet变量。
如下两种代码均可批量增加100个并重命名sheet。
Sub SheetAdd()
Dim myrange As Worksheet
Set myrange = Sheets.Add(Count:=100)
For i = 1 To 100
Worksheets(i).Name = i
Next
End Sub
Sub SheetAdd_()
For i = 1 To 100
Sheets.Add
ActiveSheet.Name = "a" & i
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub test()
Dim intWeeks As Integer
intWeeks = 1
'将工作簿中的工作表个数增加到52个
While Sheets.Count < 52
Sheets.Add After:=Sheets(Sheets.Count)
Wend
'将这52个工作表按“第一周”“第二周”…“第五十二周”的格式重命名
For i = 1 To Sheets.Count
Sheets(i).Name = "第" & Application.ExecuteExcel4Macro("NUMBERSTRING(" & intWeeks & ",1)") & "周"
intWeeks = intWeeks + 1
Next i
End Sub
Dim intWeeks As Integer
intWeeks = 1
'将工作簿中的工作表个数增加到52个
While Sheets.Count < 52
Sheets.Add After:=Sheets(Sheets.Count)
Wend
'将这52个工作表按“第一周”“第二周”…“第五十二周”的格式重命名
For i = 1 To Sheets.Count
Sheets(i).Name = "第" & Application.ExecuteExcel4Macro("NUMBERSTRING(" & intWeeks & ",1)") & "周"
intWeeks = intWeeks + 1
Next i
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub ShtAdd()
Dim i%
For i = 1 To 49
If i > Worksheets.Count Then Worksheets.Add after:=Worksheets(Sheets.Count)
Worksheets(i).Name = "第" & WorksheetFunction.Text(i, "[dbnum1]") & "周"
Next i
End Sub
Dim i%
For i = 1 To 49
If i > Worksheets.Count Then Worksheets.Add after:=Worksheets(Sheets.Count)
Worksheets(i).Name = "第" & WorksheetFunction.Text(i, "[dbnum1]") & "周"
Next i
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询