じゃばのひまつぶし:ExcelVBAによる競馬ソフト自作教室とJRA-VAN登録ソフト(おずたんシリーズ)のサポートサイトです。
JRA-VAN Data Lab対応 競馬ソフト自作教室

<New JVData Explorer> 基礎編:レース情報取得(RACE)
 
第5回(2)

更新日
2012-01-14


1.今回は”レース情報”(RACE)をダウンロードするプログラムを作ります。
レース情報は、土日分のデータを日付別で取得します。取得できる内容は、曜日により変わります。実際にはデータ区分に依存するということです。区分については第一回の仕様書の説明を参照してください。

前回で作成した"レース補てん情報”(RCOV)で得たデータはセルB〜セルFの列に表示しましたが、今回のデータはセルH〜セルLの列に表示します。

@”Top”シートにコマンドボタンを貼り付けます。
コントロールツールボックスを表示して、デザインモードでコマンドボタンを貼り付け、Captionを”Aレース情報取得[RACE]”としてください。下図参照。前回の<@レース補てん情報取得[RCOV]>ボタンの下に並べてください。
セル列幅も適宜調整してください。

デザインモード・オン(ボタンの周囲に○点がついた状態)で”レース情報取得[RACE]”ボタンをダブルクリックするとCommandButton3のサブルーチンが表示されるので、コードウィンドウに下記コードを記述します。
すでにSheet(Top)には先に作ったCommandButton1(初期設定シートへ),CommandButton2(レース補てん情報取得)のコードがありますので、その下に出ているCommandButton3の中に記述します。一番上のコメント部分は不要ですので特に記述する必要はありません。(Sheet(Top)には前回作成した他のサブルーチンもあります)
終わったらコントロールツールボックスのデザインモードを終了してクローズしてください。
プログラムのポイント
”I7”セルのFromTimeデータを読み込んで”レース情報取得”というサブルーチンに渡すだけです。
A標準モジュール"mMod2"に下記のコードを記述してください(すでにあるものの下に追加)。これは、上記の[レース情報取得]用のサブルーチンです。
上記の”レース情報”をダウンロードするフローチャートの考え方は下図のイメージです。
前回のRCOVとよく似ていますが、違いはセーブしたデータを読み込むのに土日の日付分だけループをまわすところです。



以上が終わったら、いったん上書き保存してください。
2.<レース補情報取得[RACE]>ボタンをクリックしてプログラムを実行してください。
”I5”セルにダウンロード状況を表示しながら、下の方にファイル名を表示していくのが分かると思います。
下図のようにセル”I5”にファイル数が表示され、セルH〜セルL列にファイル名が表示されれば正常です。ファイルの数は曜日により異なります。図の例では金曜日にデータを取得したために開催日当日のデータは表示されません。
正常にデータ取得が完了すると"I5"セルに[RACE]データ取得完了と表示されます。

フォルダ(\CopyData2)の中を見るとダウンロード前にはなかった[YYMMDD]形式のフォルダが2つ(土日分)できており、さらにその中にワークシートに表示された".dat形式"のファイルが保存されているのが見えると思います。
(上図と下図はデータ日付が異なるためイメージが一致しません)

続けて再度、ボタンを押すと今度は「該当データなし」と”I5”セルに出る場合がありますが、それでも正常です。つまりFromtimeに合ったデータをダウンロードしたので、それ以上新しいデータがないという意味です。
ファイル名は表示されますが、これはセーブ済みのものを読み込むからです。
次週にFromtimeが更新されればまた新しいデータが取得できます。

注意:ファイル名欄をダブルクリックしてもまだ他のワークシートへ表示がされません。まだそのプログラムを作っていませんので。。。これは後で作ります。
とりあえずはここでJVDataをダウンロードし、データを保存するプログラムを作ったと理解してください。
以上で、レース情報取得のプログラムは完成です。
次回は、”速報系データ”を取得するプログラムを作ります。

ページトップへ
 Copyright(C):Jaba 2000-2016