从单元格A7(股票名称)新页面想要创建,谷歌的数据将粘贴在新创建的工作表中。如果直接使用x
之类的值,则在我的代码而不是DLF
中,它可以正常工作。
但是,当我分配变量时,我Runtime error 1004
中的Sheets.Add.Name = x
和Runtime error 9
中的Set DataSheet = Sheets(x)
。{/ p>
Dim ParameterSheet As Worksheet
Dim DataSheet As Worksheet
Dim ticker As String
Dim exchange As String
Dim interval As Integer
Dim numPastTradingDays As Integer
Dim qurl As String
Dim x As String
Dim y As Integer
Dim WS As Worksheet
y = 7
x = Range("A" & y)
Set WS = Sheets.Add
Sheets.Add.Name = x
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.Calculation = xlCalculationManual
Set ParameterSheet = Sheets("Parameters")
Set DataSheet = Sheets(x)
DataSheet.Cells.Clear
ticker = ParameterSheet.Range("A7").Value
exchange = ParameterSheet.Range("B7").Value
interval = ParameterSheet.Range("C7").Value
numPastTradingDays = ParameterSheet.Range("D7").Value
qurl = "http://www.google.com/finance/getprices?" & _
"q=" & ticker & _
"&i=" & interval & _
"&p=" & numPastTradingDays & "d" & _
"&f=d,o,h,l,c,v"
答案 0 :(得分:1)
虽然Worksheet.Name property是工作表和工作表的属性,但它不是Sheets.Add Method中的参数。
'method 1
with Sheets.Add
.Name = x
end with
'method 2
sheets.Add After:=sheets(sheets.count)
sheets(sheets.count).name = x
这些是添加和命名工作表的两种方法。还有其他一些。
答案 1 :(得分:0)
替换 Sheets.Add.Name = x 同 ws.name = x
(您必须参考ws对象名称属性)