养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

vba怎样判定工作薄是否打开

时间:2024-10-19 10:19:55

怎样使用excelvba判断缬方焱蜱一个工作薄是否打开。这里介绍两种方法。第一种是遍历工作薄的方式;第二种是使用错误处理的方式。

vba怎样判定工作薄是否打开

工具/原料

excel2016

windows10

需要被检测的excel工作薄

使用异常错误处理方法

1、我们在vba的开发过程中需要检测一个工作薄是否被打开,这里以检测abc.xlsx为例

vba怎样判定工作薄是否打开

2、打开一个excel工作薄,点击开发工具-争犸禀淫>打开开发的vbe环境,或使用alt+F11快捷键打开VBE环境。

vba怎样判定工作薄是否打开

vba怎样判定工作薄是否打开

3、在VBE的开发环境中插入一个工程

vba怎样判定工作薄是否打开

vba怎样判定工作薄是否打开

4、然后在新打开的模块环境中插入如下代码OptionExplicitSubWb诔罨租磊IsOpenTwo()DimWbAsWorkbookDi罪焐芡拂mWbNameAsStringWbName="abc.xlsx"OnErrorGoTolineSetWb=Application.Workbooks(WbName)MsgBox"工作簿"&WbName&"已经被打开!"ExitSubline:MsgBox"工作簿"&WbName&"没有被打开!"EndSub

vba怎样判定工作薄是否打开

5、此时关闭abc.xlsx,然后点击运行按钮运行程序。

vba怎样判定工作薄是否打开

6、弹出对话框显示工作薄没有被打开

vba怎样判定工作薄是否打开

7、打开abc.xlsx.重新运行程序。弹出对话框显示工作薄已经打开。

vba怎样判定工作薄是否打开

vba怎样判定工作薄是否打开

使用遍历workbooks集合的方法

1、前面几个步骤打开vbe环境与方法一相同,这里不再赘述。同样的方式新建模块。

vba怎样判定工作薄是否打开

vba怎样判定工作薄是否打开

vba怎样判定工作薄是否打开

2、然后在新建的模块里面插入如下代码:OptionExplicitSubWbI衡痕贤伎sOpenOne()DimWbAsWorkboo娱浣嫁装kDimWbNameAsStringWbName="abc.xlsx"ForEachWbInWorkbooksIfWb.Name=WbNameThenMsgBox"工作簿"&WbName&"已经被打开!"ExitSubEndIfNextMsgBox"工作簿"&WbName&"没有被打开!"EndSub

vba怎样判定工作薄是否打开

3、注意到此时abc.xlsx已经打开。然后点击运行按钮。

vba怎样判定工作薄是否打开

4、弹出对话框显示工作薄已打开。

vba怎样判定工作薄是否打开

5、把abc.xlsx工作薄关闭,然后再次点击运行程序。显示对话框工作薄已关闭。

vba怎样判定工作薄是否打开

© 一点知识