• ベストアンサー

株データの収集

ヤフーより株価データを収集するエクセルのマクロやアドインが ありますよね。 同じようなものをエクセルのVBAで自作したいのですが、 取っ掛かりが分かりません。 収集の仕方や、参考になるホームページ・書籍をご教授ねがいます。

質問者が選んだベストアンサー

  • ベストアンサー
  • pauNed
  • ベストアンサー率74% (129/173)
回答No.1

こんにちは。 よく紹介されているのは↓この辺りでしょうか。 『三流君VBA:VBAからIE操作 TABLEの中にTABLE .getElementsByTagNameほか』 http://www.ken3.org/vba/backno/vba177.html サンプルとしては Sub sample()   Const READYSTATE_COMPLETE As Long = 4   Const sCHK As String = "日付始値高値"   Dim sURL(9) As String   Dim x As Object   Dim i As Long   Dim j As Long   Dim n As Long      sURL(0) = "http://table.yahoo.co.jp/t?"   sURL(1) = "c=2006"   sURL(2) = "a=8"   sURL(3) = "b=1"   sURL(4) = "f=2006"   sURL(5) = "d=10"   sURL(6) = "e=31"   sURL(7) = "g=d"   sURL(8) = "s=6758"   With CreateObject("InternetExplorer.Application")     .Visible = True     .navigate Join(sURL, "&")     While .busy Or .readyState <> READYSTATE_COMPLETE       DoEvents     Wend     For Each x In .document.getElementsByTagName("TABLE")       If Left(x.innertext, 6) Like sCHK Then         If x.Rows(0).Cells.Length = 7 Then Exit For       End If     Next x     If Not x Is Nothing Then       n = x.Rows.Length       ReDim v(n - 1, 6)       For i = 0 To n - 1         For j = 0 To 6           v(i, j) = x.Rows(i).Cells(j).innertext         Next j       Next i       Set x = Nothing       Sheets.Add       Range("a1:g1").Resize(n).Value = v     End If     .Quit   End With   MsgBox "finish" End Sub こんな感じ^ ^

__hiro__
質問者

お礼

回答ありがとうございます。 私が追い求めていたものズバリです! 各ステートメントを解読してみます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excel:アドイン自作の方法は?

    Excelのアドインを自作したいのですが、 どのようするのでしょうか? マクロの作成方法、VBAについてはある程度知識があります。 (何度かマクロを作成したことはあります) アドインは結局VBAで組まれたもの、とネット上で見かけました。 しかし、具体的な作り方分かりません。 特に、「ツール(T)」-「アドイン(I)」で組み込む状態の*.x?a,*.xllファイルの作成方法。 アドインの作成方法について紹介してあるサイト、書籍などがありましたら教えていただけますか? 【補足】 OS:WindowsXP SP2 Excel:Excel2000

  • ヤフーファイナンス 株価時系列データ EXCEL VBA データ取り込み 

    ヤフーファイナンスの株価時系列データを、EXCELのVBAを使って、1回のマクロ操作で複数銘柄EXCELに取り込みたいと考えています。 EXCEL Sheet1のA1、A2、A3、、、に取り込みたい銘柄コードを記入し、マクロを走らせると同ブック内で銘柄コード別にシートが出来上がるのが理想です。 データ取得期間は”デイリー”で”1999/1/1~2012/1/1”を考えています。 よろしくお願いします。

  • データ収集の仕事

    在宅ワークというとすぐに、どの仕事もあやしいのではないかと思ってみてしまうのですが・・・、職種はデータ収集、内容は特定のキーワードをGoogleやyahooなどで検索して目的のホームページが何位ぐらいにあるのかを記録するという仕事がありました。応募数も少ないようなのですが、このような仕事はとくにあやしくはないのですか?また、このような仕事をする場合、パソコンのセキュリティーの問題などで 何かリスクがあったりするのでしょうか?

  • 自作Wordマクロのアドインの配布方法について

    初歩的な質問になりますが、Wordマクロについて確認させてください。 VBAで自作マクロを作成しましてこれをユーザーに配布したいのですが、 その方法としてユーザーが自作マクロのアドインをインストールすることで 配布する方法があるようですが、その具体的な方法あるいはそのサイトがあれば ぜひご教授いただければと思います。 お手数おかけしますが、よろしくお願いいたします。

  • エクセル マクロでの株価情報収集ってできるんですか?

    先日、フリーソフトで株価チャート分析のエクセルマクロを見つけました。 実行するとエクセルのマクロでYahooファイナンスから 株価情報を自動的に取得してきて、 チャートやグラフを作ることが出来ます。 そのようなマクロはどうやって組んでいるのでしょうか? 私はエクセル上のマクロは得意なほうですが、 ネットとの連携などはどのように書いているのか全く想像がつきません。 具体的にどのようなメソッドやプロパティーなのか、 ご存知の方、教えてください。 「○○という言葉で検索すれば」といったお答えでも歓迎いたします。 よろしくお願いします。

  • エクセルで株価&財務データを取得するVBAについて

    様々なサイトを参考にして、独自のVBAを作ろうと思っています。 しかし、ダウンロードした株価データ取得のエクセルにVBを開こうと思ったが、パスワードが掛けられており、内容が確認できませんでした。 私がやりたい事は 1、ヤフーより株価データ、インフォシークより財務データを取得する 2、シートのA行にコード(複数)を入力して、実行ボタンを押すと、B以降に銘柄・株価(始値・高値・安値・終値)のデータが自動的に入力 3、株価データの後の行以降は、財務データが自動的に入力(発行済み株式数、当期純利益3年分など)   A   B    C  D…  F…      1 コード 銘柄   始値 高値… 発行済み株式数… 2 1885  ○○会社 358 457   3 2548  ××会社 369 587 4 3647  ●●会社 357 598 ようなシートが自動的に入力できるようなマクロサンプルが欲しいです。 これだけ出来れば、理論株価が計算しやすくなり助かるという気持ちがあります。 そういうマクロはあるのでしょうか・・。

  • Visual Basicについて教えてください

    会社でVBAらしいマクロ(エクセル)をみつけましたが、解読の仕方がわかりません。Visual Basicのどんな参考書を見ればわかるでしょうか。マクロのボタンを押すとデータが所定のフォルダに保存できるというものです。(わかりにくくてすみません。) 今日、エクスメディア「エクセル マクロ&VBAプログラミング」を 買いましたが、これでよかったのでしょうか。 自分でもマクロのプログラミングを仕事で使いたいのでどの参考書が よいか教えてください。 カテゴリー違いで申し訳ありません。

  • EXCEL VBAでACCESSのデータを扱いたい(初心者です)

    EXCEL VBAを勉強している者です。VBAでコードを書いてACCESSのデータを抽出してEXCELでその抽出したデートを加工したい(すべてVBAでコードを書いて処理)のですが、よくわかりません。EXCEL VBAの書籍を数冊勉強したのでEXCELの中だけでデータを作ったり、加工したりは理解できているつもりです。ただ、今まで読んだ書籍には外部データベースに接続して、その後、処理をするといったことが書いてなかったので、まったく知識がありません。そこで、ACCESSへの接続の仕方、操作の仕方などについて、やさしく(私みたいな初心者でも理解できる)説明してあるサイトまたは書籍をご存知の方、お教えください。特に、今のところ、最初の接続のところがわからないので接続について詳しく説明してあるサイトなどお願いします。

  • Excel 2003のVBAマクロデータをExcel 2007で見たい

    Excel 2003のVBAマクロデータをExcel 2007で見たい。 Excel 2003でVBAマクロを登録したExcelファイルがありますが、今回、Excel 2007をインストールして、該当ファイルを開いたところ、「マクロデータを削除しました。」とメッセージが出て、VBEを起動してもマクロが見えなくなりました。OSはWindowsXP SP3です。Excel 2003で登録したVBAマクロをExcel 2007で削除されないで、次の2点について、可能にするにはどうすればよいか、ご教示願います。 (1)マクロデータを残す方法。 (2)マクロ起動する方法。

  • ヤフーファイナンスからのデータダウンロードについて

    はじめまして。 お手数で申し訳ないのですが、 教えて頂けると幸いです。 ヤフーファイナンスから毎日、指定した銘柄の株価データ の四本値=(始値 高値 安値 終値)を取得できる マクロを作成しようと と考えておりますが、やり方がわからず困っております。。。 例えば、マクロボタンを押すと、 自動的にヤフーファイナンスのホームページから データを探し、 あらかじめセルAの列に表示した銘柄のみの 最新日付けの四本値データをエクセルに表示したいです。 セルA B C D E 銘柄  始値  高値  安値  終値  ---------------------------------------------  1301  199 202 198 200   1332 388 393 386 387 1334 194 199   190 195 1376 1618 1680 1600 1612 すいませんがヒントでも結構ですので  よろしくお願いできますでしょうか?