Excel2003 VBAでWebBrowserを使用してサーバのHTMLを取得する方法

このQ&Aのポイント
  • Excel2003のVBAでWebBrowserを使用してサーバのHTMLを取得しています。実行後、セルに半角英数字が入力できなくなります。Excel本体を再起動すると元に戻ります。またExcelを落とす時に砂時計が出てきてExcelが消えるまでに時間がかかります。何が原因で、どうすれば解消させることができるでしょうか?
  • Excel2003のVBAでWebBrowserを使用してサーバのHTMLを取得していますが、実行後にセルに半角英数字が入力できなくなります。Excel本体を再起動すると元に戻りますが、Excelを落とす時に砂時計が出てきてExcelが消えるまでに時間がかかります。この不具合の原因と解消方法を教えてください。
  • Excel2003のVBAでWebBrowserを使用してサーバのHTMLを取得した後、セルに半角英数字が入力できなくなります。Excel本体を再起動すると元に戻るものの、Excelを終了する際に時間がかかる現象も発生します。どうすればこの問題を解消できるでしょうか?
回答を見る
  • ベストアンサー

Excel2003 VBA WebBrowser

Excel2003のVBAでWebBrowserを使用してサーバのHTMLを取得しています。 (結構長いコードです。OSはXPです) 実行後、セルに半角英数字が入力できなくなります。 (キーボードを押しても反応しないような感じ) 日本語入力ならできるのですが、Excel本体を再起動すると元に戻ります。 (Altを押しっぱのような状態になっているのでしょうか?) またExcelを落とす時に砂時計が出てきてExcelが消えるまでにやたらと時間がかかります。 会社の情報があるのでここでコードを表示する事はできませんが、 何が原因で、どうすれば不具合解消させる事ができるでしょうか? ご存知の方、どうかご教授の程よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

以前同じような事象に遭遇しましたが DocumentCompletedに Unload Me End 入れていませんか? それでもダメなら単体プロセスで該当プロシージャを使うのも手です。 少なくとも他のシートには影響を与えないと思うので。

matthew_mu
質問者

お礼

ありがとうございます! それが原因でした。 別のイベントでは大丈夫なのに不思議ですね…

その他の回答 (1)

回答No.1

肝心の情報が詳しく説明されないと答ようがありません。 (サーバのHTMLを取得しています。 と言っても何をしているのか解らない) この状況で他人に聞いたたって、適切な回答は得られないかと思いますよ。 逆に貴方がこの文書を読んで答える事(答えようと思いますか)ができますか? まず、問題を切り分けて下さい。 1.いつの時点からそのようになったのか?   (ある処理を追加したからとか)   コードを書いている途中何回かそのコードを動作させてテストしているはずですよね 2.コードの一部をコメントにでもしてどの処理をするとそのような現象になるかを調べる 3.CPU の使用率 やメモリの使用量等やExcelのプロセスが残っていないか、複数起動されて   いなかを調査する 4.どこかでエラーが発生していなかを調査する   On Error Resume Next 等のコードを使っていたらコメントにして確認する 5.他の環境ではどうなのかを試して見る

関連するQ&A

  • WebBrowserで開いたEXCELファイルへのデータ更新について

    WebBrowserで開いたEXCELファイルへのデータ更新について VB2005で開発を行っております。 WebBrowserコントロール上に既存のEXCELファイルを表示させる事はできたのですが この今開いているEXCELファイルに対して、セルにデータを書き込んだりする方法が わからなくて困っております。 要件としては、VB2005のフォームで表示されてるデータをEXCELに転記し、 ユーザーがWebBrowserに表示されたEXCELに対して操作を行った後に 保存する必要があります。 単にEXCELファイルを読み込み、データを転記して保存するだけなら すでに開発済みなのですが、WebBrowserに表示しながら編集したい用件が出てきて困っております。 よろしくお願いします。

  • Excel2000とExcel2002のVBAの違いについて。

     以前、このカテゴリーにて、Excel2000におけるVBAのマクロを教えてもらったのですが、そのマクロ入力済みエクセルファイルをExcel2002へ移植したら、上手くVBAが働きません。  具体的にいうと、シート1に入力したデータの履歴を、シート2にて保存していくマクロなのですが、Excel2002では履歴のシートに上書きしていくことがあります。(たまに発生する)  Excel2000ではキチンと履歴のセルが全て残ります。  どなたか、この不具合を認識しておられる方。もしくは、対策をご存知の方がいらっしゃいましたら、教えてください。  

  • Excel2007のVBAについて

    Excel2007のVBAについて Excel2007以前では「マクロの記録」を実行して罫線や図形の描写を行って、「記録終了」を行うと作業していたコードが記述され、それを加工したりして使っていましたが、Excel2007で同じように行ってもコードが記述されてませんでした。 セルの操作等はコードが記述されていました。 どこか、私の操作方法が間違っているのでしょうか。また2003のようにコードを記述させる方法が別途あるのでしょうか、よろしくお願いします。 関係ないとおもいますが、 「Excelのオプション」で「開発タブをリボンに表示する」はチェック入れてあります。 「マクロの設定」では「すべてのマクロを有効にする」にチェックしています。

  • Excel2002VBAを使って集計値を自動入力

    Excel2002を使用しています。 コード  件数  区分 201    1    1 202    2    3 201    1    5 201    2    2 202    1    4 203    4    1 201    2    1 202    3    5 sheet1に“コード”をセルA1とする上記のような リストがあるとして、sheet2のセルA1に コード201の区分1と2の件数の計5と コード202の区分3と4の件数の計3の合計8を Excel2002VBAを使って自動入力したいのですが 書き方が思いつきません。 ご教授よろしくお願いします。

  • excel2013 vba のコードの記述を印刷

    お世話になります。excel vba のコードの記述を印刷を印刷するフリーソフトでvba2htmlがありますが、 これがexcel2013にインポートできなくて困っています。 ご存知のかたいらっしゃいましたらご教示願います。

  • Excel・VBAについて

    Excel・VBAについて 今、事務職をしているのですがExcelのVBAを独学で学びたいと思っています。 私のExcelのレベルはMOSの上級程度ですが、関数が苦手でWordとかPowerPointとかの文系よりのソフトの方が個人的には好きです。 しかし仕事をしていく上で、Excelは使う機会が多いと思いますので、更に上を目指してスキルアップしていきたいと考えております。 お聞きしたいのは、VBAを習うに当たって、英単語や理数系に強くなければならないかという事なのですが、私は英単語一つとっても本当にスペルとかを覚えるのが苦手で、理数も計算間違いばかりしてしまう方で苦手なのですが、こんな私でもVBAを習得する事は可能でしょうか? ちなみにXML(初級)をMOSの上級を勉強する時に習った事があったのですが、もう訳が分からなくてちんぷんかんぷんでした。あとAccessも苦手です…。 向いていないなら向いていないと、はっきりおっしゃって頂いて構いませんので、どうぞ宜しくお願い致します。

  •  EXCEL VBA の対応可能年齢について

    EXCEL VBA でマクロを始めました。正直申しまして、年齢のせいかサクサク事が運びません。 どれくらいの年齢層までEXCEL VBA マクロについていけるものでしょうか? ご意見をお聞かせください。よろしくお願いします。

  • Excel2007 VBAで数式がうまく入力が出来ません。

    Excel2007 VBAで数式がうまく入力が出来ません。 数式を、"=IF(AA7=0,"     ---",Z7/AA7)"     " "内には半角スペース4コ 半角マイナス3コ      と入力したいのですが、以下のように自動的に入力されてしまい、マクロ実行時に、エラーとなってしまい、ストップしてしまいます。 解消方法を教えて下さい。 VBEで入力しても、以下のように自動的に修正されてしまいます。   Range("AB7").Formula = "=IF(AA7=0," - --",Z7/AA7)"

  • WebBrowserでGmailに自動ログイン

    Excel2002VBAにて、WebBrowserでGmailに自動ログインするコードを書いたのですが 実行してGmailにログインはできるのですが、添付画像のダイアログが出てきてしまいます。 はいを押してもいいえを押しても、消した瞬間にすぐに出てきて困っています。 同じような現象の方はいませんでしょうか? またこのエラーの回避の仕方はどうしたら良いでしょうか? ログイン後の画面では何か処理をするようなコードは書いていません。 ちなみにログインするまでのコードは以下です。 Private Sub WebBrowser1_Documentcomplete(ByVal pDisp As Object, URL As Variant) 'Yahooメールなどにログインする処理 ElseIf i = 4 And URL = "https://www.google.com/accounts/Login?hl=ja&cont … Then i = i + 1 WebBrowser1.Document.getElementsByName("Email")(0).Value = "メールアドレス" WebBrowser1.Document.getElementsByName("Passwd")(0).Value = "パスワード" WebBrowser1.Document.getElementsByName("signIn")(0).Click End Sub よろしくお願いします。

  • セルの入力チェック Excel200

    あるセルで入力チェックをしたいと思っています。 半角英数字、もしくは、-(ハイフン)だけを入力できるように したいと思っています。 どのようにすればよろしいでしょうか? Excel2000です。

専門家に質問してみよう