VBA学习(7):按指定名单批量创建工作表

如下图所示,需要按A列的名单,批量创建工作表。


Sub NewShtBySelection()
    Dim shtAct As Worksheet
    Dim rngData As Range, c As Range
    Dim strName As String
    Dim n As Long, y As Long, strErr As String
    If ActiveWorkbook.ProtectStructure = True Then
        MsgBox "工作簿有保护,无法新建工作表,请先撤除保护。"
        Exit Sub
    End If
    On Error Resume Next '忽略程序错误继续运行
    Set rngData = Application.InputBox("请选择新建工作表名称来源。", _
                                Title:="提示", _
                                Default:=Selection.Address, _
                                Type:=8) '用户选择名称来源区域
    Set rngData = Intersect(rngData, rngData.Parent.UsedRange)
     '交集运算,避免用户选择整列数据造成运算量虚大或选择区域空白
    If rngData Is Nothing Then '如果用户关闭了对话框,或选择区域空白,则退出程序
        MsgBox "未选择有效区域。"
        Exit Sub
    End If
    Set shtAct = ActiveSheet '当前工作表,操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xwLink1996

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值