
VBA初心者なのですが、ExcelのVBAで、イントラネットにログインして
必要な情報を検索してデータをExcelに読み込むマクロをくもうと思っています。
それでブラウザ上に表示された画面の特定のリンク先に移動するにはどうしたらいいのでしょうか?
今はShell関数でNetscapeを起動させて、SendKeysでTabやEnterを押しているのですが、
過去ログを見るとあまり良くないみたいですし、実際、関係ないリンクを押すことがあります。
他のアプリケーションのコマンドボタンを押す、というのはログにあったのですが、
表示されてる画面のリンクに移動、というのが見つかりませんでした。
表示されている文字は同じですが、ログインするたびにJavaScriptでURLも変わるので
直接URLをいれることもできず、困っています。
すごく初歩的なことなのかもしれませんがお願いします。
それと、Netscapeより、Excel内のWebBrowserを使った方がいいのでしょうか?
No.2ベストアンサー
- 回答日時:
IEをコントロールするという手もあります。
Private Sub Command1_Click()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate2 "http://login.mail.goo.ne.jp/certify-cgi/oshiete/ …
IE.Visible = True
Do While IE.busy
DoEvents
Loop
With IE.Document.f1
.uname.Value = text1.Text
.pass.Value = text2.Text
.submit
End With
Set IE = Nothing
End Sub
この回答への補足
すぐに対応していただきありがとうございます。
こちらが遅くなってしまいすみません。
すみません、質問がまぎらわしかったですね。
ログインはすでにできているのですが、ログインした後
リンクの一つを自動でクリックして移動したかったんです。
あるいは、クリック(もしくはForcusをあててEnter)しなくても
ログインするときのように引数みたいなのをJavaScriptに送って
対応するページに移動できるのでしょうか?
No.3
- 回答日時:
>それでブラウザ上に表示された画面の特定のリンク先に移動するにはどうしたらいいのでしょうか?
>表示されている文字は同じですが、ログインするたびにJavaScriptでURLも変わるので
直接URLをいれることもできず
意味がよくわかりません。
※まずはログイン
※画面上
「次へ」
と表示されている
※タグは
<a href="http://www.goo.ne.jp">次へ</a>
となっている
しかしいつも《http://www.goo.ne.jp》となっているわけではなく、Javaで切り替わるということですか?
なんか矛盾しているような気がします。
ログイン認証の成否を判定するのは、ブラウザ(サーバ)側で、そこから出されたURLへは、ユーザ側でなくサーバ側で飛ばすべきでは?
ユーザがURLを指定できるなら、認証の意味があまり感じられないのは私だけ?
まーそれはそれとして、Java部分のソースを公開するのが解決の早道のような気がします。
何にせよ、解決策はスクリプト的になりそうですが、、、
もしかして、Web系の掲示板に書いたほうが、解決早いかも?
意味もわからず発言しておりますので、はずしているとは思いますが、
http://oshiete1.goo.ne.jp/kotaeru.php3?q=295676
http://oshiete1.goo.ne.jp/kotaeru.php3?q=267951
でHTMLを読み込むことは可能です。
種類:推測
どんな人:ド素人
自身:聞くだけ無駄
と言うカテゴリがあったらよいと思う今日この頃。。。
お答えいただきありがとうございます。
JavaScriptをほとんど理解していないため
わかりにくい質問になってしまいすみませんでした。
>解決策はスクリプト的になりそうですが、、、
そうみたいですね。教えていただいたところのHTML読み込みを使ってみようと思いますが,
まずはJavaScriptの勉強もしてみようと思います。
理解してなくてもできる手っ取り早い方法なんてないですね。
No.1
- 回答日時:
WebBrowserコントロールを使う方法
http://oshiete1.goo.ne.jp/kotaeru.php3?q=382736
INetコントロールまたはwininet系API関数でも出来ます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- その他(プログラミング・Web制作) vbaで座標を指定してコマンドプロンプト画面を表示させる。 1 2023/01/09 16:06
- Excel(エクセル) Excel ヘルプの[ロック解除]、<c0>、</c0> の意味は何ですか? 1 2023/02/20 16:58
- Excel(エクセル) iphonからone driveに保存してあるExcelを閲覧すると表示の仕方がちがうデータ 2 2022/12/21 13:51
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- au(KDDI) 「カメラへのアクセスを許可してください」のせいで年齢確認書類を撮影できない、アップロードできない 2 2022/11/01 00:04
- Windows Me・NT・2000 widows xpのエラーで利用ができなくなりました 3 2022/12/21 13:43
- Visual Basic(VBA) VBA 登録ボタンを省略してエンターキーで作業 4 2022/07/09 22:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エディットボックスの非表示方法
-
VBAでHTTPログイン
-
デュラララのダラーズ見たいな...
-
ユーザー環境変数の一覧
-
えきねっとのログイン画面はどこ?
-
VBAで一時中断したプログラムの...
-
getParameterで値が取得できず...
-
コンピュータへの接続数が最大...
-
HTMLボタンの文字色を変え...
-
ボタンのなかに表示する文字を...
-
エクセルVBAで画面の大きさを取...
-
コネクション・セッション・ト...
-
Accessの画面更新を一時的に停...
-
DataGridViewのチェックボック...
-
ASPで画面間のパラメタ受け渡し
-
Aceessのステータスバー...
-
このサイトの登録画面に直接入...
-
Fancyboxのiframe内に閉じるボタン
-
数字のみ入力可
-
ただいま勉強始めたての初心者...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでHTTPログイン
-
PHPからWindowsログインユーザ...
-
特定の端末からのみWebシステム...
-
えきねっとのログイン画面はどこ?
-
XMLHTTPを用いて認証が必要なUR...
-
Global.asaについて
-
セッション管理について(同時...
-
phpmyadminでDBが作成できない。
-
ログインフラグがわかりません。
-
VBからローカルサーバーにログイン
-
windows統合認証とform認証の併用
-
フォーム認証でのパスワードロック
-
2重ログインのチェック
-
特定ページのアクセスを一人だ...
-
ASPを使用してActiveDirectory...
-
バッチファイルでログイン後の...
-
パスワードの保存
-
青い枠のみのHTML
-
vbsでのie操作について
-
戻るボタンで、ログイン中を維...
おすすめ情報