人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

●質問者: fslasht
●カテゴリ:コンピュータ
✍キーワード:Excel HTML IE Office アイコン
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● cx20
●100ポイント

http://www.asahi-net.or.jp/~zn3y-ngi/YNxv9195.html

マクロ(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

http://msdn.microsoft.com/workshop/browser/webbrowser/reflist_vb...

Reference for Visual Basic Developers

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

◎質問者からの返答

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

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

早速試してみました。

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

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

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

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

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


2 ● Gareon
●10ポイント

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

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

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

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

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

3.HTML形式


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

◎質問者からの返答

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

Excelにこんな機能が!

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


3 ● NetVista
●10ポイント

http://www.dummy.net/

search

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

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

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

◎質問者からの返答

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

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

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

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ