小编Seb*_*Seb的帖子

在不停止代码的情况下关闭另一个工作簿

问题:我遇到的问题是,如果我尝试从另一个工作簿关闭工作簿,代码将停止运行.

这个问题已经在几个帖子中暴露过,但似乎没有解决方案.

我想做什么:

  1. 我在工作簿WB1.xlsm中有一个名为"Code1"的代码,它按以下方式打开WB2 Workbooks.Open("WB2.xlsm").RunAutoMacros(xlAutoOpen)

  2. Auto_Open代码格式WB2现在正在运行,我在WB2(复制数据)中执行操作,然后目标是将这些数据粘贴到WB3中并关闭WB1,以便我在WB2的Auto_Open代码结束时继续执行以下操作跳进WB3:

    For Each wbk In Workbooks
      If wbk.Name = "WB1.xlsm" Then
        'wbk.Activate
        'DoEvents
        'ActiveWorkbook.Close False
         wbk.Close False
        'Application.OnTime Now + TimeValue("00:00:01"), "wbk.Close"
      End If
    Next
    Workbooks.Open(PathTo_WB3).RunAutoMacros (xlAutoOpen)
    
    Run Code Online (Sandbox Code Playgroud)

    问题是代码在关闭WB1后停止(上面你可以看到关闭它的不同尝试,但它们都失败了......)

问题:实际上是否可以在不看到代码停止的情况下从另一个工作簿中关闭工作簿?

excel vba excel-vba

1
推荐指数
1
解决办法
1050
查看次数

标签 统计

excel ×1

excel-vba ×1

vba ×1