|
こんばんは、あつしです。
早速の応答ありがとうございます。
>私は詳しくないので、よくわかりませんが、
>具体的なURLを出されたほうが回答が付きやすいと思います。
操作したいページは、中央競馬のIPATの投票ページです。
全体的な流れは、IPATのオッズ情報をDLし、そのオッズ情報から買い目を計算して、投票するという作業を全て自動化するプログラムを作っています。
基本的には、吉田章太郎著〔DIY競馬プログラミングIPAT DLL編〕を参考にし、ところどころでこちらの質問箱などを利用させてもらいプログラムしてきました。
先日までは特に問題が無かったのですが、この間IPATが少し変更を受けたようで、今まで、前書に付属のIPAT DLLを利用していた部分(主に投票の部分)が作動しなくなってしまいました。
ちなみに肝心の投票ボタンは次のように記述されていて、
<TD><INPUT class=wide120 type=submit value="投 票"></TD>
次のようにプログラムを組みました。
Dim objIE As Object
Dim objItem As Object
For Each objItem In objIE.Document.all
If objItem.tagname = "INPUT" Then
If objItem.Value = "投 票" Then
objItem.Click
Exit For
End If
End If
Next
おそらくもっと簡単な記述があると思いますが、submitを使ったりして書いたソースが上手くいかなかったので、ちょっとくどいような上記のソースになりました。
自分なりに考えるに、過去ログ〔25400〕にあった解決方法が上手くいかなかったのは、
Public WithEvents objDOC As HTMLDocument
と、先方は、HTMLDcument を使っているのに対し、自分は
Object を使っていてこの部分が一致しないからなのかな?なんて思っています。
しかし、As HTMLDocumentの部分はAs Objectに変更出来ないようですし、
今までAs Object としていた部分を変えるにも、他に何を変えればいいのか皆目検討も付きません。ためしに As 〜の部分だけ変えてもやはり駄目でした。
今まで、学校などでVBやVBAを基礎から勉強したことも無く、先に出た本や、この質問箱などで、必要に迫られて必要な部分だけを勉強してきたので、ネットで WithEvents を調べても、やれクラスモジュールがどうだの、訳のわからないことばかりで、全く調べ切れませんでした。
完全な解決策でなくても、過去ログ〔25400〕にあった解決方法が理解するのに手助けになるようなHPなどありましたら、ぜひ教えてください。宜しくお願いします。
>なお、参考にされた過去ログは、以下のものですね。
>http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=25400;id=excel
>http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=25368;id=excel
〔25368〕のほうは見ていませんでした。
|
|