天津渔网价格虚拟社区

批量创建工作簿,一键秒杀!

Excel之家ExcelHome2018-03-12 14:08:37

打个哈欠,各位表亲,早上好。

今天和大家分享的技巧是:根据指定名称,批量创建Excel工作簿。

举个栗子,如下图,A列是创建工作簿的名称,需要在该工作薄所在的文件夹内批量创建相关名称的Excel工作薄。

今天和大家分享的方法,依然还是VBA代码。

Alt+F11组合键,打开VBE界面,在代码窗口中输入以下内容:

 Sub newbooks()

    Dim i&, p$, temp$

    On Error Resume Next

'忽略代码运行中的错误,避免存在异常名称工作簿等问题时,代码运行中断。

    Application.ScreenUpdating = False

  '关闭屏幕刷新

    p = ThisWorkbook.Path & "\"

  '取得当前工作薄所在路径

    For i = 1 To Cells(Rows.Count, 1).End(3).Row

  '循环读取A列数据

        temp = Cells(i, 1) & ".xlsx"

  'temp是完整的含文件后缀的工作薄名称

        With Workbooks.Add

   '新建工作薄

            .SaveAs p & temp

 '保存工作薄,p & temp是要保存的文件的名称

            .Close False

     '关闭工作薄

        End With

    Next

    Application.ScreenUpdating = True

  '恢复屏幕刷新

End Sub

按一下F5键,就可以在当前工作簿的文件夹里,快速生出一堆工作簿小崽儿,不仅提高工作效率,还非常好玩儿哦。


知识点说明

Application.ScreenUpdating = False

意思是关闭屏幕刷新,如果你不想看到工作薄从创建到关闭的整个画面过程,就使用它;通常,关闭屏幕刷新有助于提高代码的运算效率。

当然,如果你想在某些人面前装13,我代表我自己强烈建议你不要关闭屏幕更新,在旁人惊羡的目光里,让电脑屏幕闪烁的画面衬托你炫酷的小脸蛋吧~~咳咳~说不定可以借机和女同事或者男同胞交流一下友情以外的感情。

然后记得在代码结束前把屏幕刷新恢复:

Application.ScreenUpdating = True


投稿邮箱:wechat@excelhome.cn


公开课:1月7/8日晚上20:00~21:00

正式课:1月14日上午09:30~12:00  下午14:30~17:00

习题讲解及演示:1月21日上午09:30~11:30

公开课QQ群:246666940

点击【阅读原文】了解课程详情吧