• 締切済み

再度マクロで質問します。

セルのG9に 圧01-1.JPGという文字がはいっています。G9には関数の式 CONCATENATE(  )により、 圧01-1という表示になっているます。この為、セル G9の文字は変化するわけですが、今WINDOWSのデスクトップ上に写真というフォルダがありその中にいくつかのファイルがあります。 セルG9と一致するファイル(JPGファイル)を エクセル上で結合されているセル (A2:A13)に 自動的に貼りつけたいのですが、マクロがよくわかりません教えて下さい。

みんなの回答

回答No.4

エラーになる原因は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)
回答No.3

G9セルの値が 圧01-1.JPG であるとして。 1. ActiveSheet.Pictures.Insert("(パス)\" & Range("G9").Value).Select のパスで指定した場所に、その名のファイルがちゃんとありますか? 2. G9セルに表示されているファイル名の「.JPG」が半角になっていますか?特に「.」。 はずしていたら、すみません。

全文を見る
すると、全ての回答が全文表示されます。
  • hogehage
  • ベストアンサー率50% (54/107)
回答No.2

G9 は固定ですので、下みたいになりますでしょうか。 ActiveSheet.Pictures.Insert("C:\Desktop\" & Range("G9").Value).Select

GACHAMAN
質問者

補足

ありがとうございます。 やってみましたがエラーがでました。 G9の値が文字だからでしょうか? それともG9のセルに関数が入っているからでしょうか? よい知恵をお貸し下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • hogehage
  • ベストアンサー率50% (54/107)
回答No.1

どの部分がわからないのか不明ですが、 図の貼り付けでしたら、 マクロの記録を取れば、2行コードが出てくると思います。 それとも (1)G9 で示されたファイルを変数として扱うのがわからない (2)写真フォルダを検索したい(必要ないと思いますが) (3)指定したファイルがないときのエラー処理  (On Error Resume Nextで無視でいいと思いますが) とかでしょうか

GACHAMAN
質問者

補足

多分(1)のところでまよっているのだと思います。 マクロの activesheet.picturres.Insert(c:\デスクトップ\・・・・)の・・・・の所に変数をいれたいのですが? お願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • マクロで文字検索と書き出し

    Excelのマクロで各フォルダ内にあるテキストファイルに特定文字が含まれていたら そのテキストファイルがあるフォルダ名をセルB1に書きだすというマクロを組みたいです。 Aというフォルダ内に 20150328 20150410 20160322 ・・・・ ・・・・ ・・・・ 20160412 というようなフォルダ名のついたフォルダが300個近くあります。 300個近いフォルダ内にはテキストファイルがあり(ないものある) そのテキストファイル内にセルA1で入力されている文字と同じ物があれば(完全一致ではなく一部一致でよい) 一番最初に見つけたそのテキストファイルが入っているフォルダ名をB1に 書きだす方法が知りたいです。 例えば上記の例で言うと 検索した文字 【計測】だとします。 20150328 20150410 20160322 このフォルダ内のテキストファイルには全て 計測 とい文字が含まれていますが 名前の順番からすると20150328のフォルダが最初なので そのフォルダ名をB1に書きだすという感じです。 また、これは出来ればでいいのですが 300個近いフォルダを全て調べていくと時間が掛ってしまうので セルA2に日付を入力しておき 上記のマクロを実行すると、セルA2に入力した日付以降に作成されたフォルダから 検索を始めるようにしたいです。 このような事が出来るかわかりませんが、宜しくお願いします。

  • エクセルに関しての質問です。

    エクセルに関しての質問です。 マイナス(ー)の値を▲に変える関数はあるのでしょうか? セルの文字を繋ぎ合わせる関数CONCATENATE()をしようしているのですが あるセルで-3000と入力するのですが 結合したセルでは▲3000と出したいのです。 ずっと悩んでいます。 よろしくお願いします。

  • エクセル マクロで

    教えて下さい。 ある特定のフォルダ内に(例 c:\写真) に いくつかのファイルがはいっています。 あるセルに ファイル名を入力すると フォルダ内にある ファイルから セルに記入したファイルと一致する ファイルを 読み込み 貼り付けるマクロを教えて下さい。 ちなみにファイルは jpg等の写真ファイルです。

  • Excelで選択した文字列を結合するマクロ

    Excelで複数選択したセルの文字列を結合するマクロってありますか? CONCATENATEや&でいつも文字列を結合しているのですが、 一度に10セル前後結合するので効率が悪く困っています。 お手数ですがご教授いただけたらと思います。 宜しくお願い致します。

  • Excelでセル内改行

    お世話になります。 早速ですがExcelで複数のセルに文字列が入力されている時、それらの文字を結合する場合はCONCATENATE関数を使いますよね? で、この応用(なのか判りませんが)で例えばセルA1に"改"の文字が、セルB1には"行"の文字が入っているとき、セルC1に 改 行 と改行させて2行で表示したいのですが、セルC1に"=CONCATENATE(A1,CHAR(13),B1)"とやってもうまくいきませんでした。 Alt+Enterで手入力する以外に関数、マクロ等で何かいい方法がありますか? よろしくお願いします。

  • エクセルの文字列を結合しても、数値の桁区切りが消えないようにするには?

    例えばエクセルで、 「A1」のセルには「定価」、 「A2」のセルには「1000」、 「A3」のセルには「円」という文字が入っていたとします。 このエクセル上の文字列を「=CONCATENATE(A1,A2,A3)」の関数で結合します。 「A2」の書式設定は、数値にして桁区切りにチェックを入れているので、 セルの表示上は「1,000」となっていますが、「CONCATENATE」でセルを 結合した後の結果は以下のようにカンマが消えてしまいます。 CONCATENATE(A1,A2,A3)の結果 ⇒ 定価1000円 これを「定価1,000円」という風に表示させる良い方法はないでしょうか? 宜しくお願いいたします。

  • Excel2007のマクロで文字列を結合

    Excel2007のマクロで文字列を結合したいのですがうまくいきません。 1、セルA1からU1までデータが1つずつ入ってます。 2、1のデータを3列ずつ結合してA3からG3にコピー。 例えば、セルA1あ、B1い、C1う、D1え、E1お、F1か、ならセルA3あいう、セルB3えおか、のようにマクロで一機にできるソースをお願いします。

  • 同フォルダ内の串刺し集計と文字列結合のマクロ作成

    同じフォルダ内に同じ形式のファイルがいくつかあり、ブック間で数値の串刺し集計と、文字列を結合して集計できるマクロの作成がしたいです。 フォルダ内には各所から送付されてくる同一フォーマット書類『(回答)**.xls』が多数あります。 「**」にはそれぞれの部署名が入っており、シート名は『回答』となっています。 各ファイルの『回答』シート F5~F32セルまでには数値が入力されています。 同じく各ファイルの『回答』シート G5~G32セルまでには文字列が入力されています。 これらを同一フォルダ内にある『集計ファイル.xls』の『集計』シートに集計をしたいのです。 F列は数値なので串刺し集計、G列はそれぞれバラバラの文字列のため「,」で区切って文字を結合をしたいと思っています。 (G列イメージ) あああ,XX,○△△,・・・ このようなマクロを同一フォルダ内にある『集計ファイル.xls』に作成することはできるのでしょうか? よろしくお願いいたします。

  • CONCATENATE関数を使うメリットは?

    式 =A2&A3&A4&A5 と式 =CONCATENATE(A2,A3,A4,A5) とは同じ結果になりますよね? 前者より後者の関数を使った方が良いのはどんな場合かを知りたいのです。長年に亘って Excel を使い続けているけど、文字列結合をするときに私は CONCATENATE を使ったことがありません。 添付図をご覧ください。 セル B2 に簡単な式 =B1&A2 を入力して、このセルのフィルハンドルをマウスで「エイヤッ!」とダブクリするだけで、セル B5 には式 =CONCATENATE(A2,A3,A4,A5) と同じ効果が表示されます。このように、“CONCATENATE結合”より“&結合”の方が絶対便利と思っているので、私の知らない CONCATENATEの特長を知りたくてお尋ねしています。

  • エクセルマクロ 「101」 ボタンをおして 「102」となるマクロ?

    エクセルです。 一つのセル(A4)に「101」と書いてあります。それをVlookup関数で他のシートから一致する情報を取り出しています。次に同じセルに「102」とうつと、同じように一致する情報を取り出しています。 そこで、一回、一回、セルに102や103と打つのではなく、ボタンを押すと次の番号にうつるようなマクロを組みたいと思ってます。 ただ、101~130 次は、201~231みたいになってます。 一つのマクロでなくても良いので、よろしくお願いします。 最初は、 Range("A4").select  セルA4を選択 だと思うのですが、この次から分かりません。

専門家に質問してみよう