VBA判断Excel文件已经打开

您好,怎么用代码判断文件是否已经打开,比如:
宏设置在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

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网