※ ChatGPTを利用し、要約された質問です(原文:マクロ VBA 簡単なことなのかもしれませんが?)
マクロVBAで時系列データをExcelにロードする方法は?
このQ&Aのポイント
マクロVBAを使用して、特定のURLから時系列データをExcelにロードする方法について質問です。
Excelのシートに入力済みの銘柄コードと期間を指定し、VBAを使用して指定したURLからデータをロードします。
選択した終了日までのデータをロードするため、URL中の選択終了日を変更する処理が必要です。しかし、それを行ってもデータが正常にロードされません。原因を教えてください。
時系列をexcelにロードする際、http://table.yahoo.co.jp/t?c=2007&a=6&b=20&f=2007&d=9&e=21&g=d&s=1321.o&y=0&z=1321.o
のページの 月日から月日までの部分と銘柄コード=excelシート入力済。⇒VBA⇒ロードするための作業を、下記の方法で、とりあえず、終了日のところから改式をやってみたのですが、うまくゆきません。 "選択終了日"に変更する前の、数字の状態ではロードできるので、テーブル番号等は、問題ないようです。
原因の解る方、よろしくお願いします。
-----------------------------
Sub test()
Range("a1:h300") = ""
Dim shuuryoubi As String '選択終了日
Range("b1").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://table.yahoo.co.jp/t?c=2007&a=6&b=20&f=2007&d=9&e=選択終了日&g=d&s=1321.o&y=0&z=1321.o" _
, Destination:=Range("b1"))
.Name = _
"t?c=2007&a=6&b=20&f=2007&d=9&e=選択終了日&g=d&s=1321.o&y=0&z=1321.o"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "23"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
shuuryoubi = 17
End With
End Sub
お礼
アドバイスありがとうございました^^。 全ての入力が可能になり、とても助かりました。 ちなみに、下記様になりました (同様の件で探されている方参考になさってください)。 Sub test77() Range("a1:h300") = "" Dim kaisituki As Integer '選択開始月 Dim kaisibi As Integer '選択開始日 Dim shuuryoutuki As Integer '選択終了月 Dim shuuryoubi As Integer '選択終了日 Dim sijyou As Integer '選択市場 Dim sijyoukigou As String '選択市場記号 Range("b1").Select kaisituki = 7 kaisibi = 21 shuuryoutuki = 8 shuuryoubi = 20 sijyou = 6363 sijyoukigou = t With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://table.yahoo.co.jp/t?c=2007&a=" & kaisituki & "&b=" & kaisibi & "&f=2007&d=" & shuuryoutuki & "&e=" & shuuryoubi & "&g=d&s=" & sijyou & "." & sijyoukigou & "&y=0&z=" & sijyou & "." & sijyoukigou & "" _ , Destination:=Range("b1")) .Name = _ "t?c=2007&a=" & kaisituki & "&b=" & kaisibi & "&f=2007&d=" & shuuryoutuki & "&e=" & shuuryoubi & "&g=d&s=" & sijyou & "." & sijyoukigou & "&y=0&z=" & sijyou & "." & sijyoukigou & """" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .WebSelectionType = xlSpecifiedTables .WebFormatting = xlWebFormattingNone .WebTables = "23" .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = False .Refresh BackgroundQuery:=False End With End Sub