0

querytableを使用してyahoofinanceからExcelにデータをダウンロードするスクリプトを作成しました。各URLをループしてデータをダウンロードする必要がありますが、2番目のループを通過できず、.Refresh BackroundQuery:=Falseでエラーコード1004-予期しないエラーが発生しました。

コードは次のとおりです。

rowOffset = 0
url = Worksheets("Yahoo codes").Range("b2").Offset(rowOffset, 0)

Do While url <> ""

With ActiveSheet.QueryTables.Add(Connection:="URL;" & url, Destination:=Worksheets("Yahoo Data").Range("A65536").End(xlUp).Offset(1, 0))
    .RefreshStyle = xlOverwriteCells
    .SaveData = True
    .BackgroundQuery = True
    .Refresh BackgroundQuery:=False


    '.Refresh

End With

rowOffset = rowOffset + 1
url = Worksheets("Yahoo Data").Range("a2").Offset(rowOffset, 0)
Loop
4

1 に答える 1

1

B2 から最初の URL を取得し、A3 から後続の URL を取得するように見えます...

エラーが発生したら、イミディエイト ウィンドウ (Ctl+G) に移動し、次のように入力します。

?Worksheets("Yahoo Data").QueryTables(2).Connection

正しく見えるかどうかを確認します。url = ...そうでない場合は、2 番目のステートメントが間違っていると思います。

于 2012-10-22T14:29:35.693 に答える