はじめまして、ケロロ2等兵といいます。
過去ログをみさせてもらったのですが
あまりくわしくないので質問させていただきます。
コンパイラはVB6.0です
やりたいことはHPのテキストボックスにVBから値をいれこんでそれを確定(OKボタン等)させることなのですが
そのとっかかりの勉強ができそうなHPを教えていただけないでしょうか?
前にDOMとかなんとかの単語はでてきてたのですがどうにもわからないので
すみませんが、よろしくお願いします
発言遅くてごめんなさい。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200407/04070045.txt
↑こういう事でしょうか?
・・・ん? 意図してる事と違う?
この場合を例にとると
Webブラウザを使用してというのが何を意味してるのかがわからないのです
参照設定や、コンポーネントでどれをしようしてるかとかかかれてたらまだわかるのですが、そのレベルではないので。
ですからやりたいことはたぶんこういうことなので
入門とかのVBでWebにアクセスする方法とかを紹介されているHPで勉強できたらと思いましたので
返事遅くなってすみませんでした。
発言ありがとうございます
うーん・・・。
イベントに関してだったら、MSDN Libraryを、僕はお勧めします。(英語が嫌いになりますが。)
・・・英語、苦手ですか? 辞書片手にでも、是非。
コンポーネントとか参照設定に関しては、HPなら結構出てると思いますよ。
いや、HPに限らず、書籍でも。
・・・手当たり次第に探してみるのが、一番良いかと。(あまりHPも書籍も探してません。ごめんなさい m(_ _)m)
因みに、僕はMSDNとVBのヘルプが多いですね。
試しにヘルプから読み始めるのを、是非、お勧めします。
恐らく、お望みの事は粗方見つかるのではないかと思いますよ。
すみません、ちょっとばたばたしていて作業にかかれていませんでした
あれからなんとかIEでの起動には成功したのですが(IEのオブジェクトがありましたので)今度はつながるときとつながらないときがありまして、
片方はわりと成功率は高いのですが完全ではなく、もう片方は失敗の方が多いという状態です
HPは開かれるのですが、値がはいるときとはいらない状況でAccess画面にもどるとエラーが発生しているという状況です
遅くまでお疲れ様です。
とりあえず、1つ解決、といったところで宜しいのですね?
さて・・・、ん?
昨日のご発言から、少し整理しますね。
・IEは2つある。
・1つはページが表示される。
・もう1つはページが表示されない。
・値の入る時と入らない時がある。
・Accessを使用している。
で良いのかな・・・? 間違ってたら訂正して下さい。
以上を読み返してみて、僕から質問です。
・IEの表示方法(WebBrowserを使っているのか、IEを直接表示させているのか)
・成功率の高い方は、どこまで完全なのか
・失敗する方は、どんなエラー(またはページ読込ができていないのか)
・入れる値はどんな形式か(文字列、数値など)
・値が入る時と入らない時の、値の違い
・Accessに戻る、とは
この6点に関してです。
(返答発言長くなるかなぁ。レス回数多くさせてごめんなさい m(_ _)m)
IEを表示 と テキストに値を入れる 処理の間に
(または テキストに値を入れる と ボタンクリック 処理の間に)
MSGBOXを入れてみて時間を置いて実行してみてください。
動きましたか?
動いたのならIE表示終了していないのに
テキストに値を入れているのかと思います。
IEの表示が完全に終了した後、テキストに値を入れてみてください。
とりあえず、こちらを参考にしてみてはいかがでしょう?
http://www.users.gr.jp/ml/archive/viewer.aspx?name=vb&no=9517
多くのレスありがとうございます
まずやりたいことなのですが
宅配関係のことになりまして
伝票番号をいれたAccessのフォームがありまして(宅急便は2種類)
選んだ方のHPを表示して値をいれこみ結果をみる(配達完了かどうか)
といったことになります
最終的には配達完了であればテーブル内に配達完了とわかるようなデータを自動で
うちこめればと考えています
参考にしたHPは
http://fukkey.dyndns.org/pins/vb/030331/46877.html
になります
IEの表示方法の表示方法はIEそのものをと認識しています
失敗する個所はHPが表示されていますが、番号がテキストボックスにはいってもいません
成功の高い方は10回やって2回失敗するくらいです
データはAccessの方はString型です(-がはいってもいいようにです.あまり入力方式を限定はしていません)
AccessにもどるとはIEを表示させてのちにAccessの画面をアクティブにしたらです(アクティブにしなくてもエラー画面は表示されていると思います)
こういった感じになっています
あんさん>
参考にしたHPには終了するまでまつとかいてありますのでその心配はないのではないかと思っています
だいさん>
職場ではあまりHPを今はひらけないので自宅にもどっての作業になりますが
ありがたく参考にさせていただきます
まだまだがんばっていきたいと思います
みなさまたくさんのレスありがとうございます
(・・・解決クリックされそうな雰囲気。)
>2005/02/17(木) 23:26:26
から、成功していない箇所だけ、考え得る事を。
・失敗する方で、HPは表示されてもテキストボックスに入っていない、という事は、オブジェクトとして認識出来ていないのでは?(WebBrowser使用派なので自信無いですけど)Form名、Object名は取れていますか?
HPが固定されているのであれば、の話です。
・あんさんが発言されていましたが、読込完了してから値入力している事はありませんか?(レス内には心配無いとありますが、その点は大丈夫ですか?)
恐らく20%の失敗は、2点目が原因かと僕は考えます。
レス長くさせてごめんなさい。
あ、ごめん、上記2点目間違えました。
>読込完了してから値入力している事はありませんか?
読込完了する前に、値入力している事はありませんか?
ですね。 失礼しました。
すみません
IEが完全に表示されていないのに値をいれこもうとしていたようです
が
Do While IE.busy = true
DoEvents
Loop
のコードをいれていたのですが
Loopを抜けた後IE.busyの状態を調べたらTrueになってたので
ちょっとわからなくなっております
再度調べなおしてみます
Do While IE.busy = true
DoEvents
Loop
Do While IE.Document.ReadyState <> "complete"
DoEvents
Loop
としてみてはどうでしょうか?
やはり 読み込みが完全に終了してないので
オブジェクトが作成されていなかったのかな
これで解決かな?
>IE.Document.ReadyState<>"complete"
結果はうまくいきました。ありがとうございました
調べたらDLされたオブジョクトの状態って感じにのってありましたが
こういうプロパティもあるんですね
Accessが特殊なんですかね・・・
おまじないコードとかだったらサンプル紹介とかでのってありそうな気がするのは
自分の思い込みなんでしょうか
まだまだ先は長いですがありがとうございました
今度はWebの値をひっぱってこれたらと思いますので調べます
またひっかりそうではありますが、そのときはまた助言していただけたらと思います。
ありがとうございました
ツイート | ![]() |