VBA中关闭工作薄,创建工作薄,判断工作薄之过程代码
VBA语言专家 发表于:2020-02-15 13:01:54
原标题:VBA中关闭工作薄,创建工作薄,判断工作薄之过程代码
分享成果,随喜真能量。大家好,今天继续和大家分享VBA编程中常用的简单“积木”代码第71-73讲的过程代码。这也是我“搭积木”编程中利用到的积木。
越简单的事物往往越容易理解,简单的过程组合起来就是一个复杂的过程,我们要先认真掌握这些简单的过程,才能在可以为我们复杂的工程服务。
VBA过程代码71:关闭所有工作簿,若工作簿已改变则弹出是否保存变化的对话框
Sub MyNZ()
MsgBox "关闭当前所打开的所有工作簿"
Workbooks.Close
End Sub
代码的解析说明:上述代码用于关闭所有工作簿,如果工作簿已改变则弹出是否保存变化的对话框,Workbooks.Close由于后面没有跟true或者false所以若工作簿已改变则弹出是否保存变化的对话框。
VBA过程代码72:创建新的工作簿
Sub MyNZ()
MsgBox "创建一个带有10个工作表的新工作簿"
Dim wb as Workbook
Set wb = NewWorkbook(10)
End Sub
Function NewWorkbook(wsCount As Integer) As Workbook
Dim OriginalWorksheetCount As Long
Set NewWorkbook = Nothing
If wsCount < 1 Or wsCount > 255 Then Exit Function
OriginalWorksheetCount = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = wsCount
Set NewWorkbook = Workbooks.Add
Application.SheetsInNewWorkbook = OriginalWorksheetCount
End Function
代码的解析说明:自定义函数NewWorkbook可以创建最多带有255个工作表的工作簿。本测试示例创建一个带有10个工作表的新工作簿。
_________________________________
VBA过程代码73:判断工作簿是否存在,子过程中如果工作簿存在,则返回True
Sub MyNZ()
MsgBox "如果文件不存在则用信息框说明,否则打开该文件."
If Not FileExists("【路径】/文件.xls") Then
MsgBox "这个工作簿不存在!"
Else
Workbooks.Open "【路径】/文件.xls"
End If
End Sub
Function FileExists(FullFileName As String) As Boolean
FileExists = Len(Dir(FullFileName)) > 0
End Function
代码的解析说明:本示例使用自定义函数FileExists判断工作簿是否存在,若该工作簿已存在,则打开它。代码中,“【路径】/文件.xls”代表工作簿所在的文件夹名、子文件夹名和工作簿文件名。
下面是我根据自己20多年的VBA实际利用经验,编写的四部经验教程,这些是较大块的“积木”,可以独立的完成某些或者某类系统的过程,欢迎有需要的朋友联络(WeChat:NZ9668)分享。利用这些可以提高自己的编程效率,选择好积木,搭好积木。
第一套:《VBA代码解决方案》是VBA中各个知识点的讲解,覆盖了绝大多数的知识点。
第二套:《VBA数据库解决方案》是数据处理的利器;
第三套:《VBA数组与字典解决方案》中讲解VBA的精华----字典。
第四套:面向初学及中级以下学员的视频《VBA代码解决方案》正在录制。 “每天20分钟,半年精进VBA”活动正在火热进行中,越早参与,回馈越多。现在第一册48讲内容已经录制完成。录制到第二册59讲的课程。
上述教程中第一、二、三是PDF教程,第四套教程是视频教程。其中视频教程的优惠活动正在进行中。
责任编辑: