Excel VBA更新for循环中的链接速度太慢
我有两本工作手册:MainWorkbook和SourceWorkbook 基本上,我让用户在MainWorkbook中输入股票行情表。SourceWorkbook根据一个股票代码进行计算,然后输出信息。我在主工作簿中显示了其中的一些信息(对于用户输入的每个stocker ticker) 此过程是(例如伪代码) 对于每个股票代码:Excel VBA更新for循环中的链接速度太慢,excel,vba,Excel,Vba,我有两本工作手册:MainWorkbook和SourceWorkbook 基本上,我让用户在MainWorkbook中输入股票行情表。SourceWorkbook根据一个股票代码进行计算,然后输出信息。我在主工作簿中显示了其中的一些信息(对于用户输入的每个stocker ticker) 此过程是(例如伪代码) 对于每个股票代码: 在SourceWorkbook中更改ticker 更新主工作簿中的链接(以便 新信息被拉入) 将拉入MainWorkbook的信息作为值粘贴 转到下一个自动售票机 这
For Each ticker In tickers_array
source_book.Worksheets("Calculation").Range("D4") = ThisWorkbook.Worksheets("Detailed Exhibit").Cells(7, current_ticker_col).Value
ThisWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources, Type:=xlExcelLinks
With ThisWorkbook.Worksheets("Detailed Exhibit")
.Range(.Cells(9, current_ticker_col), .Cells(29, current_ticker_col + 4)).Value = .Range(.Cells(9, current_ticker_col), .Cells(29, current_ticker_col + 4)).Value
End With
current_ticker_col = current_ticker_col + 4
Next
注:我在第9-29行的4列中显示了每个股票代码的信息(因此每个循环将当前股票代码更新4)
我遇到的问题是链接永远不会更新,所以我只是将所有公式粘贴为值,所以MainWorkbook只显示SourceWorkbook中最初包含的股票代码的信息 你的链接/查询设置为在后台运行吗?我不确定你的意思。你能帮我理解吗?我正在使用MainWorkbook中的公式从SourceWorkbook中提取信息(然后在转到下一个股票代码之前将其粘贴为值)。粘贴股票代码时,
source\u book
对股票代码代码有什么作用?是运行查询,还是仅仅使用工作表公式执行计算?这是另一种选择,但我已经做了大量工作来使用这种方法,因此,我希望有人能找到除此之外的解决方案。我真的无法想象你的设置-你的所有链接单元格都指向source\u book
中的同一个单元格块吗?如果在调用updatelink后在循环中设置了一个中断,它是否会“赶上”?