您好,怎么用代码判断文件是否已经打开,比如:
宏设置在A.xlms 里,我要从 B.xlsx 里复制A列内容到A.xlms的A列里,B文件是已经打开的,从他里面复制完以后,不要关闭这个文件,但是要代码在A里运行。一般不是B激活以后运行的代码会在B文件里操作吗,我要在不关闭B的情况下,仍要切换的A文件里继续运行,怎么弄,谢谢
Sub aa()
Dim curBK As Workbook
Dim fromBk As Workbook
Dim bk As Workbook
Set curBK = ThisWorkbook '把当前工作薄赋值给一个对象变量
For Each bk In Application.Workbooks
If bk.Name = "B.xlsx" Then
Set fromBk = bk
Exit For
End If
Next
If fromBk Is Nothing Then
MsgBox "B.xlsx没有在当前EXCEL进程中打开" '如果B文件没有打开则退出程序
Exit Sub
End If
'如果B文件已经打开,直接进行操作
curBK.Worksheets("A文件中的A工作表").Range("A1") = fromBk.Worksheets("B文件中的B工作表").Range("A1")
End Sub
Dim curBK As Workbook
Dim fromBk As Workbook
Dim bk As Workbook
Set curBK = ThisWorkbook '把当前工作薄赋值给一个对象变量
For Each bk In Application.Workbooks
If bk.Name = "B.xlsx" Then
Set fromBk = bk
Exit For
End If
Next
If fromBk Is Nothing Then
MsgBox "B.xlsx没有在当前EXCEL进程中打开" '如果B文件没有打开则退出程序
Exit Sub
End If
'如果B文件已经打开,直接进行操作
curBK.Worksheets("A文件中的A工作表").Range("A1") = fromBk.Worksheets("B文件中的B工作表").Range("A1")
End Sub
温馨提示:答案为网友推荐,仅供参考