我正在尝试制作一个 vba 程序,它将获取 A 列中的股票代码并将其粘贴到单元格中的不同“设置”表上,然后该程序将执行另外两个 vba 代码来下载历史数据并回测我的公式。然后程序将返回“数据”表,并将“设置”中“B10”中的值打印到“数据”的D列中。我需要打印的值位于与代码行相对应的 d 列中。该程序必须重复 500 次。你能帮我找到如何做到这一点或指出我的代码有什么问题吗?谢谢!
Sub finalbalance()
Dim ticker As Range
Dim i As Long
Sheets("results").Activate
Set ticker = ActiveCell
For i = 1 To 500
Sheets("results").Activate
ticker.Select
Selection.Copy
Sheets("Settings").Select
Range("B1").Select
ActiveSheet.Paste
Application.Run "datadownload"
Application.Run "btest"
ticker.Offset(0, 3) = Sheets("settings").Range("B10")
ticker.Address = ticker.Offset(1, 0)
Next i
End Sub