- ベストアンサー
エクセルでマクロを実行したいのですが。
エクセル上に大量の写真を縦に並べて挿入したいのですが、自動でやるためのマクロのやり方がまったくわかりません。 たとえばAの1に写真1を挿入して4×3センチにする。次にAの10に写真2を挿入してまた4×3センチにする。 ということを繰り返したいのですが、自動でできますでしょうか・・・。 写真は100枚くらいあって、1つのフォルダにまとめてあります。 エクセルの本をいくつか見てみたのですが、マクロについて書かれた本がなかったので、もしかしたら初心者にはできないことなのかもしれませんが、お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 1)新規ブックでツール-マクロ-VisualBasicEditor(以下VBE)を実行 2)VBE画面が開くので、VBE画面で挿入-標準モジュール 3)出てきた標準モジュールに Sub Test() ~ End Sub をコピペ 4)VBE画面を閉じる 5)ブックを画像があるフォルダに適当な名前で保存 6)ツール-マクロ-マクロで Test を実行 これでフォルダ内にある jpg に対して処理が走ります。
その他の回答 (2)
- marbin
- ベストアンサー率27% (636/2290)
本屋さんにある本には "マクロ"とは書かれてないと思います タイトルに "VBA" と付いているものがマクロについて記載されています。
お礼
ああ、ありがとうございます。 早速、本屋へ行って調べてみます。 VBAという文字は見かけたのですが、あれだったんですね・・。
- papayuka
- ベストアンサー率45% (1388/3066)
出来るかと言うなら出来ます。 Excelファイルに100枚も画像を取り込むのは推奨しませんが、、、 サンプルです。 マクロを含むブックを画像と同じフォルダに保存してから実行します。 対象は jpg Sub Test() Dim fName As String, i As Integer, r As Range ChDrive (ThisWorkbook.Path) ChDir (ThisWorkbook.Path) fName = Dir(ThisWorkbook.Path & "\*.jpg", vbNormal) Set r = ActiveSheet.Range("A1") Do While fName <> "" ActiveSheet.Shapes.AddPicture fName, _ False, True, r.Left, r.Top, 113.25, 84.75 Set r = r.Offset(10, 0) fName = Dir() Loop End Sub
補足
出来ることがわかってよかったのですが、まったくの初心者なので、うまく実行できません・・・。 マクロやVisualBasicに関する初心者向けの参考書やHPがありましたら教えていただきたいのですが・・。プログラミングをやったことがない者でもできるものなのでしょうか。(HTMLは少し経験がありますので、上記のプログラムもなんとなく意味はわかるのですが・・・。)
お礼
できました!できました!マクロ初体験です。 ありがとうございました。 これを機会にプログラミングを覚えてみます。 とても助かりました。