- 締切済み
エクセル2007マクロで画像を表示
マクロは変数やfor~nextなどを今、猛勉強中です。 アクティブシートにJpeg画像を順番に表示させるマクロを組んで、それを表示させるためのボタンを置こうとしたのですが、一応ググリながらマクロを組んでみたのですが、実行させたところ、シートは真っ白です。 ちなみに自分が組んだプロシージャは下記のものです。 根本的に、画像を表示させる命令(プロパティ?)が間違っているとは思うのですが…。 Sub 自習() Dim i As Integer For i = 1 To 8 ActiveSheet.Select getfiles = "images" & i & ".jpg" Next i End Sub あと、画像ファイルはExcelブックと同じフォルダに8枚置いてあります。 どなたか、ご教授願います。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
作成例:ブックと同じ場所に「IMG_001.jpg」などがある sub macro1() dim i as long on error resume next for i = 1 to 8 with activesheet.pictures.insert(thisworkbook.path & "\IMG_" & format(i, "000.jpg")) .top = cells(i, "A").top .left = cells(i, "A").left .width = cells(i, "A").width .height = cells(i, "A").height end with next i end sub オートシェイプの図形などをボタンに仕立て,右クリックしてマクロを登録する #ネットで見ながら書いたマクロがそれでしたら,こうして改めてマクロを回答しても同じ事かもしれませんが,とにかく頑張って勉強なさってください。 でも「実はこうだったのでもういっかい教えて」は無しでお願いします。
- umekihajime
- ベストアンサー率23% (13/55)
Sub 自習() の前に、下記の宣言を追加して下さい。 Option Explicit その後、実行するとエラーが出ると思いますので、 エラーメッセージに従ってデバッグを進めて見て下さい。
お礼
ご教授の通りにやってみましたが、自分にはまだ勉強不足のようでさっぱり分かりませんでした。すいません。
お礼
実行してみましたが、何故かウチではエラーが出てしまいました。コピペしたのですが。 結果は以下のプロシージャで妥協しました。 Sub 自習() Dim i As Long Dim myfilename As String Dim myfilename2 As String Dim tmp As String myfilename = ActiveWorkbook.Path & "\image" For i = 1 To 8 If i <> 8 Then Sheets("Sheet1").Select myfilename2 = myfilename & i & ".jpg" ActiveSheet.Pictures.Insert Filename:=myfilename2 Worksheets("Sheet1").Select tmp = InputBox("次へいきます", "待つ", , 800, 500) Worksheets("Sheet3").Select ElseIf i = 8 Then ActiveSheet.Pictures.Insert Filename:=myfilename2 MsgBox ("終わりです") End If Next i End Sub ご教授いただき、ありがとうございました。