第1种:不管工作簿是否已经打开,直接打开
-
现在新版的office已经修改为,允许重新打开已经打开的EXCEL文件
-
如果文件已经打开,且未被修改,直接重新再打开1次
-
如果文件已经打开,但是已经被修改,会弹提示,确认后重新再打开
Sub williamDing31()
Dim wb1 As Object
Set wb1 = Workbooks.Open("C:\Users\Administrator\Desktop\test1.xlsm")
Debug.Print wb1.Worksheets("sheet1").Cells(5, 5)
End Sub
第2种:比较稳妥的方案---错误捕捉的思路
- 先直接假设文件已经打开
- 如果没打开,错误代码9,则补充打开
Sub williamDing30()
Dim wb1 As Object
On Error Resume Next
Set wb1 = Workbooks("C:\Users\Administrator\Desktop\test1.xlsm")
If Err.Number = 9 Then
Set wb1 = Workbooks.Open("C:\Users\Administrator\Desktop\test1.xlsm")
End If
Debug.Print wb1.Worksheets("sheet1").Cells(5, 5)
End Sub
on error resume next
myFileName = ”sales.xlsx"
stPath = ThisWorkbook.Path
stFullName = stPath & "\" & myFileName
Set
x = Workbooks.Open(Filename:=stFullName)
if err.number=1004 then
……‘处理代码
end if
第1种:不管工作簿是否已经打开,直接打开现在新版的office已经修改为,允许重新打开已经打开的EXCEL文件 如果文件已经打开,且未被修改,直接重新再打开1次 如果文件已经打开,但是已经被修改,会弹提示,确认后重新再打开Sub williamDing31()Dim wb1 As ObjectSet wb1 = Workbooks.Open("C:\Users\Admini...
判断Excel表格是不
已经打开
在通过
VBA代码
打开或是关闭文件时,需要
判断文件
是否已经打开,以便做出适当的操作,避免已
打开的文件被误保存,下面的代码主要用来确认文件
是否已的打。
Function SheetIsExist(strExcleName As String, strSheetName As String) As Boolean
'//
判断名称的
工作表
是否已经在指定的Excel文件中存在
Dim shtSheet As Worksheet
SheetIsExist = False
通过遍历已经打开的工作簿
*bookName需要加文件后缀名,如.xlsx
Public Function IsWorkbookOpened(bookName As String)
Dim wb As Workbook
IsWorkbookOpened = False
For Each wb In Application.Workbooks
If wb.Name = bookName Then
IsWorkbookOpened = T
不打开工作簿取得其他工作簿数据的几种方法
在Excel的使用过程中,经常需要引用其他工作簿的数据,而用户往往希望能在不打开工作簿或看似不打开工作簿的情况下取得其他工作簿中的数据,有以下几种方法可以实现。
1 数据不多时使用公式
如果需要引用的数据不是太多,可以使用公式取得引用工作簿中的工作表数据,如下面的代码所示。
Sub CopyData_1()
Dim Temp...
通过遍历当前应用程序所有已
打开的
工作簿文件(Workbooks 集合),
判断指定名称的
工作簿是否打开。
Sub test()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name = "1.xlsx" Then
MsgBox "1文件
已经打开"
Sub OpenWorkbook()
Dim msgBoxResult As Integer
msgBoxResult = MsgBox("你想要
打开工作簿吗?", vbYesNo, "
打开工作簿")
If msgBoxResult = vbYes Then
Workbooks.Open Filename:="C:\Users\YourUsername\Documents\ExampleWorkbook.xlsx"
End If
End Sub
请注意,您需要将“YourUsername”替换为您的计算机用户名,并将“ExampleWorkbook.xlsx”替换为要
打开的
工作簿的文件名和路径。