[[20170205131034]] 『vbaを使用してweb操作』(羊) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『vbaを使用してweb操作』(羊)

vbaを使用してwebサイトに自動ログインが可能ということを知ったのでやってみたいと思っているのですが、自動ログインだけでなく、その先も可能なのか知りたいので質問させて下さい。
既存のwebサイトに自動ログイン後のページに表示されたボタンを押すとボタンの右に数字が表示され1からカウントは始まるのですが、このカウントが60になったらもう一度隣のボタンを押したいです。ボタンを押すと数字のカウントがとまります。このような動作を繰り返し行う処理をしたいのですが、vbaでも可能でしょうか?可能であれば調べつつやっていきたいと思っているのですが、ご存知の方いらっしゃいましたら教えてください。お願いします。

< 使用 Excel:Excel2013、使用 OS:Windows7 >


VBA からIEを操作する件については、
「Excel 三流君」でヒットするサイトがおすすめです。
サイトのHTMLというか、DOMに関するある程度の
知識が必要ですが、親切な作りになっています。
じっくり取り組むことをおすすめします。
(γ) 2017/02/05(日) 13:51

 それなら、エクセルvbaではなく、拡張子「vbs」のVB-Scriptの方がおすすめです。
 エクセルは、立ち上げに時間かかりますので。WEB操作は、自己責任で!
 getElementsByName
 getElementsByTagName
 getElementById
 などで、検索してみてください。

 次を参考にしてみてください。
 VBS Yahoo知恵袋(Yahoo自動ログイン)
http://note.chiebukuro.yahoo.co.jp/detail/n7711?__ysp=dmJzIHlhaG9vICDoh6rli5Xjg63jgrDjgqTjg7M
(マリオ) 2017/02/05(日) 17:53

CreateObject("InternetExplorer.application")で作成したオブジェクトを
操作するのですから、
VBSを使うことに有意差があるとは思えません。
起動時間の問題ではないと思います。
 
要はIEを通じてDOMの操作するわけであって、その点はどちらでも同じです。
しかし、デバッグ機能の差や、VBAへの慣れを考えると、
VBSのほうが良いという考えには賛成できません。
(勿論、色々な言語でスクレイピングは可能であり、
 VBAより高機能で便利なものはいくらもあります。
 VBAがベストと申し上げている訳ではないので誤解無きよう。)
むしろ、DOM(Document Object Model)をどこまで理解できているかがポイントになります。
 
なお質問者さんが、こちらで具体的な助言を得たいのであれば、
URLを示すことが最低限必要ですね。
Excelの話であれば、殆どのことは共通認識に立って概括的なレベルでも
議論ができるかもしれません。
 
しかし、Webサイトは個別性が強いものです。
WEBを構成する部品へのアクセスの仕方も、作り方により様々です。
一律ではありません。
ですから、少なくともURLを示さないことには、具体的な議論はできません。
それだけの情報だけでコードが提示できる訳もありません。
# カウンターが60回に達するまでとか、どんなサイトなんでしょうか?
# ゲームか何かですか?

(γ) 2017/02/06(月) 00:11


今何を表示しているか。これを拾うのは難しそうに思います。IEオブジェクト経由で拾えるのは、表示に使っているソース、HTMLであり、ブラウザがスクリプトの指示でどう動いているのかは、ブラウザでないと判りませんから。

なので、実現するとしたら、60になったであろう時間分Excel側で非同期で待ち、今の状態を気にせずに、ボタンを押しに行くことでしょうか。
(???) 2017/02/06(月) 13:15


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.