- 締切済み
再度マクロで質問します。
セルのG9に 圧01-1.JPGという文字がはいっています。G9には関数の式 CONCATENATE( )により、 圧01-1という表示になっているます。この為、セル G9の文字は変化するわけですが、今WINDOWSのデスクトップ上に写真というフォルダがありその中にいくつかのファイルがあります。 セルG9と一致するファイル(JPGファイル)を エクセル上で結合されているセル (A2:A13)に 自動的に貼りつけたいのですが、マクロがよくわかりません教えて下さい。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- DoragonFang
- ベストアンサー率41% (91/221)
エラーになる原因は2つ考えられます。 1つは指定したファイルが存在しない場合。 2つ目はファイル名が間違っている場合です。 特にファイル名で、全角と半角は区別されますので、 G9セルにあるファイル名と、実際のファイルのファイル名とを調べてみて下さい。 ファイルの存在をチェックするコードです。 ActiveSheet.Pictures・・・の前に入れて見て下さい。 Set fs = CreateObject("Scripting.FileSystemObject") If fs.Fileexists("C:\デスクトップ\" & Range("G9").Value) = False Then A = MsgBox("Not Exist!", vbOKOnly, "Error") Exit Sub End If
- KenKen_SP
- ベストアンサー率62% (785/1258)
G9セルの値が 圧01-1.JPG であるとして。 1. ActiveSheet.Pictures.Insert("(パス)\" & Range("G9").Value).Select のパスで指定した場所に、その名のファイルがちゃんとありますか? 2. G9セルに表示されているファイル名の「.JPG」が半角になっていますか?特に「.」。 はずしていたら、すみません。
- hogehage
- ベストアンサー率50% (54/107)
G9 は固定ですので、下みたいになりますでしょうか。 ActiveSheet.Pictures.Insert("C:\Desktop\" & Range("G9").Value).Select
- hogehage
- ベストアンサー率50% (54/107)
どの部分がわからないのか不明ですが、 図の貼り付けでしたら、 マクロの記録を取れば、2行コードが出てくると思います。 それとも (1)G9 で示されたファイルを変数として扱うのがわからない (2)写真フォルダを検索したい(必要ないと思いますが) (3)指定したファイルがないときのエラー処理 (On Error Resume Nextで無視でいいと思いますが) とかでしょうか
補足
多分(1)のところでまよっているのだと思います。 マクロの activesheet.picturres.Insert(c:\デスクトップ\・・・・)の・・・・の所に変数をいれたいのですが? お願いします。
補足
ありがとうございます。 やってみましたがエラーがでました。 G9の値が文字だからでしょうか? それともG9のセルに関数が入っているからでしょうか? よい知恵をお貸し下さい。