Excelで仕様書を作っているのですが、このなかにHTMLで作成した画面イメージを張り込みたいと考えています。

 ブラウザでHTMLを表示したものをキャプチャしてビットマップとして貼り付ければいいのですが、もっとよい方法はないでしょうか?
 メニューの「挿入」→「オブジェクト」でHTMLファイルを指定してみたら、IEのアイコンが張り付いただけでした。
 HTMLファイルをドロップしたり、IEからコピペすると、無理やりExcelのセルやフォーム部品を使って再現しようとしますが、もとの表示とはだいぶ異なったものになってしまいます。
 理想としては、外部のHTMLファイルをExcelのワークシート内の指定領域に張り込め、しかもHTMLファイルが更新されたら、Excelに貼った内容も追従してくれることです。しかもOffice(2000)がインストールされている環境であれば他にソフトをインストールする必要がないとありがたいです。(これは欲張りすぎか…)

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:cx20 No.1

回答回数607ベストアンサー獲得回数108

ポイント100pt

マクロ(VBA)を使っても良いということでしたら、

WebBrowser コントロールを使うことで実現可能です。


以下は、Windows 2000 SP4 + IE6 SP1 + Excel 2003 SP3 の環境での例です。

(Excel 2000 でも、同様の操作です(メニュー名が多少違うかも))


------------------------------------------------------------------

■ Excel で WebBrowser コントロールを使う方法


1. Excel ファイルを開きます。


2. メニューの [表示] - [ツールバー] - [コントロール ツールボックス] を選択します。


3. [コントロール ツールボックス] - [コントロールの選択] アイコンをクリックします。

  コントロールの一覧から「Microsoft Web Browser」を選択して、画面に貼り付けます。

  (マウスカーソルが「+」になるので、範囲指定をして貼り付けます。)


4. [Microsoft Web Browser コントロール] - [右クリック] - [コードの表示] を選択します。


  以下のコードを記述します(※)

 

  Private Sub Worksheet_Activate()

    ’表示したい HTML ファイルへのパス(もしくは URL)を指定します。

    ’WebBrowser1.Navigate ”http://www.hatena.ne.jp/

    WebBrowser1.Navigate ”C:¥home¥edu¥hatena¥fslasht¥1116055235¥test.html”

    ’コントロールを画面に表示します。

    WebBrowser1.Visible = True

  End Sub


5. [コントロール ツールボックス] - [デザイン モードの終了] アイコンをクリックします。


6. いったん、ファイルを閉じて、再度ファイルをオープンすると、

  HTML ファイルが Excel ファイル内に読み込まれます。

------------------------------------------------------------------


※ 注意点

  ソースコードの一部の記号(「’」「”」「¥」など)が全角になっている可能性があります。

  これは、はてなに回答を登録するときに変換されてしまうためです。


<テスト環境>

Windows 2000 SP4 + IE6 SP1 + Excel 2003 SP3

Windows 2000 SP4 + IE6 SP1 + Excel 2000

URL は WebBrowser コントロールに関する情報です。

id:fslasht

回答ありがとうございます。

 わざわざコードまで用意した頂いてありがとうございます。

 早速試してみました。

 Activateイベントがうまく発生しなかったので、ボタンを作ってそのなかでコードを実行したらブラウザコントロールにHTMLの内容が表示されました。

 一度、HTMLが表示できる状態になれば、マクロはs駆除してしまっても大丈夫でした。ブラウザコントロールのプロパティ(表示するURL)をセットするマクロをPersonal.xlsにでも登録しておけばよさそうです。

 外部のHTMLを書き換えたら、Excel側でも再オープン後に反映しました。(外部のHTMLファイルのファイル名を変えたり、フォルダを移動しても探し出して表示するようです。さすがに削除したら表示はされなくなりました)

 これでほとんど理想どおりです。

 ちょっと気になるのは、Xlsファイルを閉じるとき何も編集していなくても、「変更を保存しますか?」とダイアログが出るようになってしまったことです。これの回避は難しそうですね。

2005/05/14 19:04:24
id:Gareon No.2

回答回数3ベストアンサー獲得回数0

ポイント10pt

http://www.atmarkit.co.jp/fwin2k/win2ktips/320webquery/webquery....

@IT:Windows TIPS -- Tips:Webクエリで外部データとダイナミックにリンクする

webクエリで試してみてはどうでしょう。

データ→外部データの取込→新しいwebクエリ

1.参照するhtmlのパスを記入

3.HTML形式


URLはwebページとのリンクの例になります。

id:fslasht

回答ありがとうございます。

 Excelにこんな機能が!

 でもこの機能はデータ連携が目的で、レイアウトについては重要視されていないようですね。

2005/05/14 19:06:47
id:NetVista No.3

回答回数843ベストアンサー獲得回数0

ポイント10pt

挿入→図→ファイルでファイル名に挿入したい画像のURLでExcelで貼り付けられます。

当該の画像が更新されればExcel上の画像も更新します。

大きな画像ではダウンロードに時間がかかる場合がありますが、当該画像を右クリックして図の書式設定のWebでダウンロード中の表示の文言が指定できます。 (例:画像取得中)

id:fslasht

回答ありがとうございました。

 HTMLファイルは指定できないようです。

 「ファイルの変換」というダイアログが表示されますが、ファイルの変換は出来ないようです(エラーになる)。

2005/05/17 06:18:05

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません