• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:画像をエクセルに貼り付けるマクロ)

画像をエクセルに貼り付けるマクロ

このQ&Aのポイント
  • 複数の画像をエクセルに貼り付けるマクロです。方法がわからないという質問です。
  • 現在のマクロでは、縦方向に2個の画像が貼り付けられます。
  • 質問者は、縦方向に3個の画像を貼り付ける方法を知りたいと述べています。

質問者が選んだベストアンサー

  • ベストアンサー
  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

Select Case i Mod 2 Case 1 '奇数回目 ActiveCell.Offset(, 4).Select Case 0 '偶数回目 ActiveCell.Offset(11, -4).Select End Select の部分を 以下のように修正するだけでOKです。 Select Case i Mod 3 Case 2 ActiveCell.Offset(, 4).Select Case 1 ActiveCell.Offset(, 4).Select Case 0 ActiveCell.Offset(11, -8).Select End Select

sakaharu3
質問者

お礼

どうもありがとうございました。無事におもったことができました。 もうひとつわかれば教えていただきたいのですが、 これで貼り付けると、ひとつのフォルダ内にいれた複数の写真で、一番最後の写真が一番最初に貼り付けられてしまいます(例えば、画像ファイル名が1、2、3、4、5とあると、5、1、2、3、4)という順番で張り付いてしまいます。1、2、3、4、5の順番ではりつけることができれば嬉しいです。

その他の回答 (2)

  • layy
  • ベストアンサー率23% (292/1222)
回答No.3

順番ですが、 For i = LBound(Filenames) To UBound(Filenames) を For i = 1 To UBound(Filenames) にしてみても同じでしょうか。

sakaharu3
質問者

補足

どうもありがとうございます。 試してみましたが結果は以前と同じでした。

  • kybo
  • ベストアンサー率53% (349/647)
回答No.2

Excel2007以降でも正常に貼り付けできようにするには、さらに With pic.ShapeRange .Height = 120# .Width = 175# .Rotation = 0# End With を With pic.ShapeRange .Height = 120# .Width = 175# .Rotation = 0# .Left = ActiveCell.Left .Top = ActiveCell.Top End With としておいた方がよさそうです。

sakaharu3
質問者

お礼

ありがとうございます。 書き換えました。

関連するQ&A