• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelVBAの使い方 ¥の使い方おしえてください。)

ExcelVBAの使い方とパス名取得の方法

このQ&Aのポイント
  • ExcelVBAを使用して特定のパス名を取得する方法の質問です。提供されたコードの最後の部分で、パス名の中の¥が正しく機能していないため、画像が正しく貼り付けられません。フルパスを作成するための正しい方法についてのアドバイスをお願いします。
  • ExcelVBAを使用してパス名を取得する方法に関する質問です。提供されたコードの一部で、パス名の中の¥を正しく扱う方法がわかりません。フルパスを作成するための助言をお願いします。
  • ExcelVBAの使い方とパス名取得の方法についての質問です。提供されたコードでは、パス名の中の¥が適切に使用されず、画像が正しく挿入されません。パス名を正しく結合してフルパスを作成する方法を教えてください。

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.2

『¥の使い方』というより、変数と文字列の繋ぎ方ですね。 まずは簡略な例で確認したほうが良いですよ。 Sub sample()   Dim f As String   Dim s As String      f = "c:\mydocuments"   s = "abcde"   MsgBox f & "\" & s & ".jpg" End Sub こんな感じで、『 変数 & "文字列" & 変数 & "文字列" 』 みたく繋ぎます。 Sub test()   Dim MyObjFo As Object   Dim Myname As String   Dim fName  As String   Dim i    As Long   Set MyObjFo = CreateObject("Shell.Application") _          .BrowseForFolder(0, "フォルダを選択して下さい", 0)   If MyObjFo Is Nothing Then Exit Sub   Myname = MyObjFo.Self.Path & "\"   'MsgBox Myname   With ActiveSheet     For i = 1 To 7       fName = Myname & .Cells(i, "A").Value & ".JPG"       'MsgBox fName       If Len(Dir(fName)) > 0 Then         .Pictures.Insert fName       Else         MsgBox fName & "が見つかりません"       End If     Next   End With   Set myobj = Nothing End Sub

yorosi18
質問者

お礼

回答ありがとうございます。大変感謝してます。 Myname = MyObjFo.Self.Path & "¥" fName = Myname & .Cells(i, "A").Value & ".JPG" つまりこの&の使い方がじゅうようだったんですね。 すごいです。ここまで長々と親切に教えてくれてありがとうございます。 納得できました。 If Len(Dir(fName)) > 0 Thenの使いかたもすばらしいです。 長さで判断に使うとは。 これでかなりぐっと便利になりました。

その他の回答 (1)

回答No.1

試してはいませんが、\(半角)ではなく¥(全角)になっているのが原因ではないでしょうか。

関連するQ&A