JV-Dataの使い方あれこれ |
タイトル | : JVRSSで1日の最大レース数を知るには? |
記事No | : 4544 |
投稿日 | : 2016/02/04(Thu) 07:41 |
投稿者 | : VBAオンチ |
|
お世話になります。
JVRSSのVBAでの使い方を理解中です。 例えば日曜("2")の場所名"1"の1日の競走名本題を全部得 るために下記のようにすると通常は特別レースのみ表示されます。
For p=1 to 12 '12レース分 Range("A" & p).Value="=JVRSS|'00121" + Format(p,"00") + "'!" + "RA競走名本題" ; Next p
(質問1) ただこれは1日にレース数が12と仮定していますが、ダービーなどでは1日に1 2レースない場合があります。あらかじめ何レースあるかをJVRSSで知るにはどう すればいいでしょうか。 (関連して同様に1日に何場所開催があるのかを知りたいです)
(質問2) 仮に上記のコードでp=1 to 13と存在しないレース数でやると最後は "#JVError"と表示されます。エラーですが、このエラーモードやエ ラー番号を検出するにはどうすればいいですか。 あらかじめ1日のレース数がわからないときはすべて12レースと仮定して、存在 しないレースの時にエラーを検出して表示しないなどの使い方を想定しています 。(1日の開催場所数も3場所と仮定してエラーになったら避けることもできる と思います)
なおJVRSSデータ仕様書(Ver1.0.4)2014年9月9日版を使ってます。 他にも質問がありますので、別項目にします。 よろしくお願いします。 |
|
タイトル | : Re: JVRSSで1日の最大レース数を知るには? |
記事No | : 4546 |
投稿日 | : 2016/02/08(Mon) 17:17 |
投稿者 | : JRA-VAN ソフトサポート |
|
JRA-VANソフトサポートの竹下です。 DataLab.サービスをご利用頂きまして誠にありがとうございます。
(質問1) まず、JVRSSでその開催日のレース数を取得することはできません。場数も同様 です。
そのため、ループ処理に想定される最大値を設定し、 判定前に書き込んだセルの値を検索して " #JVError"であった場合処理を抜け、 その時のカウント数で判断が可能かと思われます。
下記に例を記載致します。
【コード例】
Dim count As Integer
count = 0
' レース数取得 For p = 1 To 12 '12レース分 Range("A" & p).Value = "=JVRSS|'00121" + F ormat(p, "00") + "'!" + "RA競走名本題" ;
If Range("A" & p).Value = " #JVError" Then '判定に使用したセルの"#JVError"を空文字に置換します。 Range("A" & p).Value = "" 'レース数表示 Range("A" & p + 1).Value = "レース数:" + CSt r(count) Exit For ElseIf IsError(Range("A" & p).Value) Then 'セルエラー時の処理 End If
count = count + 1
Next p
上記はあくまで一例ですので参考情報としてお考えください。
(質問2) 質問1で回答させていただきました方法が、 JVRSS(JVError)の検知になります。 申し訳ありませんが、ご了承ください。
以上、よろしくお願いいたします。 |
|
タイトル | : Re^2: JVRSSで1日の最大レース数を知るには? |
記事No | : 4547 |
投稿日 | : 2016/02/10(Wed) 08:36 |
投稿者 | : VBAオンチ |
|
JRA-VANソフトサポート 竹下様
ご回答ありがとうございました。 内容了解しました。 |
|
|
|
copyright ©2007 JRA SYSTEM SERVICE CO.,LTD. All Rights Reserved.
|
|
|