ここから本文です

エクセルで写真をセルの大きさに合わせて貼り付けしたいのですが、マクロ・VBAで簡...

qqrh7ftdさん

2012/3/2216:26:49

エクセルで写真をセルの大きさに合わせて貼り付けしたいのですが、マクロ・VBAで簡単に貼り付けらせるやり方を教えてください。

ちなみに、工事用写真に使い、A4のサイズで一枚に3枚貼り付けられます。写真の貼り付けるセルの大きさはW:11.6cm、H:8.7cmです。よろしくお願いします。

補足補足なのですが、セルをダブルクリックして写真を挿入出来るようにしたいです。
要望が多くて面倒だと思いますがよろしくお願いします。

閲覧数:
27,863
回答数:
2
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

bchlr_esmjkさん

2012/3/2513:35:08

こんな感じですか?セルをダブルクリックすると、ファイル選択ダイアログでファイルを選択して、セルのサイズに合わせて貼り付けられます。

以下を対象のシートモジュールに貼り付けて使用して下さい。

Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim fd As FileDialog
Dim shp As Shape

Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.Filters.Clear
fd.Filters.Add "画像ファイル", "*.bmp; *.gif; *.jpg; *.jpeg; *.png", 1

If fd.Show Then
Set shp = Me.Shapes.AddPicture(fd.SelectedItems(1), _
msoFalse, msoTrue, Target.Left, Target.Top, 1, 1)

shp.ScaleHeight 1, msoTrue
shp.ScaleWidth 1, msoTrue
shp.LockAspectRatio = msoTrue

If Target.Height <= Target.Width Then
shp.Height = Target.Height

Else
shp.Width = Target.Width

End If

Cancel = True

End If

End Sub

質問した人からのコメント

2012/3/26 11:53:33

成功 ありがとうございます。私の希望通りに写真を貼り付けることができました。

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

このQ&Aで解決しましたか?質問する

閉じる

ベストアンサー以外の回答

1〜1件/1件中

mynobujpさん

編集あり2012/3/2312:13:40

単純に写真の大きさをあわせるだけでよいなら


VBAのマクロ 以下のコード

Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 246.75
Selection.ShapeRange.Width = 328.5

を写真 選択後に実行すれば設定できます。

工事用のEXCELの雛形を用いて 任意の写真を貼り付け、ドキュメントを作成するなど
のソフト フリーソフトを探せばあります。

http://kokuo.com/

http://www.vector.co.jp/soft/winnt/business/se495115.html

Google で検索
http://www.google.co.jp/webhp?cplp=1324544636662#hl=ja&sclient=psy-...

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

ID/ニックネームを選択し、「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する