こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

csv内にサブフォルダー内のファイル名を抽出する方

csvのA列にアイテム番号が記載されております。
また、とあるフォルダーにアイテム番号になった名前のサブフォルダーが複数ございます。
しかし、フォルダ内の画像ファイル名が不規則となっているので、アイテム番号とサブフォルダ名が一致したらb列以降に抽出したいのですが、どのようにしたらよろしいでしょうか?

投稿日時 - 2018-02-25 23:45:34

QNo.9432742

困ってます

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

指定フォルダのファイル名を読み、フォルダなら、A列を検索。見つけたらB列に書き込むプログラムです。完全一致です。
csv ファイルをExcel で開いてから実行してください。
PathNameはとあるフォルダーに変更して下さい。
'
Option Explicit
'
Sub Macro1()
'
  Const PathName As String = "C:\Users\MA\Desktop\My Documents"
  Dim FileName As String
  Dim Attr As Integer
  Dim FRange As Range
  Dim Row As Long
'
  Columns(2).ClearContents
  FileName = Dir(PathName & "\*.*", vbDirectory)
'
  While FileName > ""
    Attr = GetAttr(PathName & "\" & FileName) And vbDirectory
'
    If Attr > 0 Then
      Set FRange = Columns(1).Find(FileName, LookAt:=xlWhole)
'
      If Not FRange Is Nothing Then
        Row = Row + 1
        Cells(Row, "B") = FileName
      End If
    End If
    FileName = Dir
  Wend
End Sub
「フォルダ内の画像ファイル名が不規則」というのが意味不明でした。やりたいことはこうではないのかもしれません。違っていたら何をしたいのか詳しく書いて下さい。

投稿日時 - 2018-02-26 01:20:17

補足

補足です。
C:\Users\Owner\Downloads\通販素材\tsuhan_jp_5028_2018-02-26\setting_000002016 のフォルダに
現在3つのサブフォルダーがございます。
たとえば、
1006
2001
1223
というものがあったとして、そのファイルの中身の画像ファイル名が
000033340_0001.jpg、000033340_0002.jpg、000033340_0003.jpg
のように不規則になっております。

ネットショップで商品を一括で登録する際に、csv上に画像ファイル名を記載する必要があるのでサブフォルダー名が一致したらファイル内のファイル名を抽出する方法についての質問でした。

投稿日時 - 2018-02-26 07:15:20

お礼

再度質問いたします。

投稿日時 - 2018-02-26 08:51:17

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問