等到application.run完成
我试图在一个文件上打开另一个工作簿,运行一个macros来获取一些数据,将数据复制到第一个工作簿并closures第二个工作簿。
但是,我遇到了一个问题,因为它看起来像是在第二个工作簿中的macros仍在运行时执行范围的select,因此select整个列:
即ws2.Range(StartCell, ws2.Cells(LastRow, "A")).Select
在下面的代码中selectstringselect整个列,而不仅仅是存在数据的单元格。
'run macro in IB API file to get portfolio data Application.Run "TwsDde.xls!Sheet15.subscribeToPorts" 'select data in column A from IB API file Dim LastRow As Long Dim StartCell As Range Set StartCell = Range("A8") LastRow = ws2.Cells(ws2.Rows.Count, StartCell.Column).End(xlDown).Row ws2.Range(StartCell, ws2.Cells(LastRow, "A")).Select
有没有人遇到过这个问题之前,或有任何想法如何解决它?
你的LastRow
计算是错误的。 它应该是xlUp
而不是xlDown
。