Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


26672 / 76738 ←次へ | 前へ→

【55397】Re:フォームのImageに表示した写真をエクセルシートに貼り付けたい
回答  kanabun  - 08/5/2(金) 13:37 -

引用なし
パスワード
   おじゃまします。

画像を保存するのではなくて、
シートにファイルから画像を挿入するんですよね?

Excelのバージョンはいくつですか?
2007でなければ、シートに「図の挿入」をする操作をマクロ記録
してみれば、画像ファイル名を指定してシートに貼り付けるコード
のおおよそが分かると思います。

  Range("D5").Select
  ActiveSheet.Pictures.Insert( _
    "D:\(画像フォルダ)\サンプル.jpg").Select

マクロ記録から、
PicturesオブジェクトのInsertメソッドを使用すればいいこと
が分かります。
これをカスタマイズすればいいのです。

Sub Samp2()
  Dim picFile As String
  Dim pic As Picture
  Dim myCell As Range
  
  picFile = "D:\(画像フォルダ)\砂漠.jpg"
  With ActiveSheet
    Set myCell = .Range("A1:E5")
    Set pic = .Pictures.Insert(picFile)
    With pic.ShapeRange
     .Left = myCell.Left
     .Top = myCell.Top
     .LockAspectRatio = msoTrue '縦横比を固定
     .Width = myCell.Width   'ここでサイズ変更
     .AlternativeText = picFile
    End With
  End With
End Sub

※Shapes.AddPicture というのもありますけれど、
 これだと写真など画像のアスペクト比(縦横比)が読み込む前に
わかっていないといけないので、個人的には
原寸大をSheet にLoadしておいて、
あとからたてよこ比を変えないで変形できる
Pictures.Insert のほうが好きです。
3 hits

【55387】フォームのImageに表示した写真をエクセルシートに貼り付けたい ken 08/5/2(金) 8:21 質問
【55388】Re:フォームのImageに表示した写真をエクセ... ハチ 08/5/2(金) 8:33 発言
【55391】Re:フォームのImageに表示した写真をエクセ... ken 08/5/2(金) 11:19 発言
【55396】Re:フォームのImageに表示した写真をエクセ... ハチ 08/5/2(金) 13:00 回答
【55397】Re:フォームのImageに表示した写真をエクセ... kanabun 08/5/2(金) 13:37 回答
【55398】Re:フォームのImageに表示した写真をエクセ... kanabun 08/5/2(金) 13:56 回答
【55399】Re:フォームのImageに表示した写真をエクセ... ken 08/5/2(金) 14:01 発言
【55400】Re:フォームのImageに表示した写真をエクセ... kanabun 08/5/2(金) 14:08 回答
【55401】Re:フォームのImageに表示した写真をエクセ... ken 08/5/2(金) 14:37 お礼
【55404】Re:フォームのImageに表示した写真をエクセ... Yuki 08/5/2(金) 16:06 発言
【55406】Re:フォームのImageに表示した写真をエクセ... kanabun 08/5/2(金) 16:28 回答
【55410】Re:フォームのImageに表示した写真をエクセ... ken 08/5/2(金) 17:02 発言
【55409】Re:フォームのImageに表示した写真をエクセ... ken 08/5/2(金) 16:57 発言
【55413】Re:フォームのImageに表示した写真をエクセ... Yuki 08/5/2(金) 17:27 発言
【55460】Re:フォームのImageに表示した写真をエクセ... ken 08/5/5(月) 6:57 お礼

26672 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free