ここから本文です

解決済みのQ&A

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

qqrh7ftdさん

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

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

補足
補足なのですが、セルをダブルクリックして写真を挿入出来るようにしたいです。
要望が多くて面倒だと思いますがよろしくお願いします。
  • 質問日時:
    2012/3/22 16:26:49
  • 解決日時:
    2012/3/26 11:53:33
  • 閲覧数:
    16,626
    回答数:
    2
  • お礼:
    知恵コイン
    50枚

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

bchlr_esmjkさん

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

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

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

グレード

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

(1件中1〜1件)

 

mynobujpさん

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


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-...

  • 違反報告
  • 編集日時:2012/3/23 12:13:40
  • 回答日時:2012/3/22 20:06:51

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

総合Q&Aランキング

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

知恵コレに追加する

閉じる

知恵コレクションをするID/ニックネームを選択し、「追加する」ボタンを押してください。
※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

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