我是编码的新手,我正在尝试执行以下操作;
跟踪工作簿包含从输入工作簿中获取的项目信息.我正在尝试打开输入工作簿复制项目信息表上的所有数据,并将其过去跟踪工作簿的项目信息表.这是我在下面的编码
Sub GetProjectInfo() Workbooks.Open Filename:="\\ccprd02\workgrp2\AM\SPIM Input.xlsm" ActiveSheet("Project Info").Select Cells.Select Selection.Copy Windows("SPIM Tracking Sheet.xlsm").Activate ActiveSheet("Project Info").Select Cells.Select Range("A1").Activate ActiveSheet.Paste Range("A1").Select Windows("SPIM Input.xlsm").Activate ActiveWindow.Close End Sub
它正在打开文件,但似乎在复制数据之前就停止了.我似乎无法查明错误.我搜索了几个类似问题的线程,但没有任何运气.我的编码有问题吗?
代码的问题在第二行.
ActiveSheet("Project Info").Select
这应该是,
ActiveWorkbook.Sheets("Project Info").Select 'alternative Worksheets("Project Info").Select
正如我的评论中所述,请参阅如何避免在Excel VBA宏中使用Select以获取更多方法,以避免依赖select和activate来实现目标.该ActiveWorkbook属性,Application.ActiveWindow财产,ActiveSheet属性和ActiveCell属性只是referrencing的不可靠的方法.