今天和大家分享的技巧是:根据指定名称,批量创建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
|