下記のコードでeachPath = Dir(ThisWorkbook.Path & "\" & YYYYMM & "\" & itemsdic & "*", vbDirectory)
と第二引数のフォルダパスのみをしているのに実際、Debug.Print (eachPath) '出力結果
すると.pdf拡張子のファイルまで出力されてしまいます。
原因と解決方法について、ご教示ください。
vba
1Sub conbertToPdf() 2Dim i As Long 3Dim YYYYMM As String 4Dim fileName As String 5Dim Dic As Object 6Dim buf As String 7Dim itemsdic As Variant 8 9Dim eachPath As String 10Dim hypLink As Hyperlink 11 12 13YYYYMM = Cells(5, 4).Value 14 15If YYYYMM = "" Then 16 MsgBox "YYYYMMに出力したいフォルダパスを入力してね~" 17 Exit Sub 18End If 19 20 21fileName = Dir(ThisWorkbook.Path & "\" & YYYYMM & "*", vbDirectory) 22 23 24Set Dic = CreateObject("Scripting.Dictionary") 25 26Do While fileName <> "" 27 If fileName <> "." And fileName <> ".." Then 28 Dic.Add fileName, fileName 29 End If 30 fileName = Dir() 31Loop 32 33i = 3 34 For Each itemsdic In Dic 35 eachPath = Dir(ThisWorkbook.Path & "\" & YYYYMM & "\" & itemsdic & "*", vbDirectory) 36 Do While eachPath <> "" 37 Debug.Print (eachPath) '出力結果 38 If eachPath <> "." And eachPath <> ".." Then 39 Cells(i, 6).Value = itemsdic 40 Set hypLink = ActiveSheet.Cells(i, 7).Hyperlinks.Add( _ 41 Anchor:=Cells(i, 7), _ 42 Address:=ThisWorkbook.Path & "\" & YYYYMM & "\" & itemsdic & "\" & eachPath, _ 43 TextToDisplay:=eachPath) 44 45 i = i + 1 46 End If 47 eachPath = Dir() 48 Loop 49 Next 50
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/08 02:04