Excel VBA:当我打开一个新的工作簿时,ActiveWorkbook不会改变

以下是应该发挥作用的一小部分代码:

Workbooks.Open (MPPGLoc) ActiveWorkbook.Sheets("MPPG").Activate ActiveSheet.Move Before:=Workbooks("DPV Acq Test.xlsm").Sheets(1) 

我正在让用户input付款计划的文件位置,然后假定要在计划中正确的工作表,并试图将其复制到不同的工作簿中,使其自动化。 但是,这只是简单地将其中一个工作表移动到其他工作表之前的原始工作簿中。

不知道是否问题是因为打开工作簿不一定使其活动,或与我的移动function的问题。 任何帮助表示赞赏,谢谢。

因此,你应该避免使用Activeworkbook使用对象。

看到这个例子( 未经testing

 Dim wb As worksbook, wbNew As Workbook Dim wsNew As Worksheet '~~> I am assuming that you are running the code from '~~> Workbooks("DPV Acq Test.xlsm") Set wb = ThisWorkbook Set wbNew = Workbooks.Open(MPPGLoc) Set wsNew = wbNew.Sheets("MPPG") wsNew.Move Before:=wb.Sheets(1)