Step20:フォルダ内のHTMLファイル全体をAMP変換するように変更する|Excel VBA

これまで指定したファイルのみAMP変換を行いましたが、フォルダを指定しその中に含まれるHTMLファイル全体を対象にするように変更します。今回はサブフォルダも含めた、フォルダ内のファイル一覧を取得しシートに表示します。

AMP変換ソフト作成 メニューへ

スポンサーリンク





VBAでフォルダ内ファイル一覧を作成する

E2~G2に変換先フォルダの入力セルを追加しました。
変換先フォルダの入力セルを追加

サブフォルダも含めフォルダ内のファイル一覧を作成するVBAです。
フォルダ内文字列カウントソフトの「Step 2 サブフォルダも含めフォルダ内からファイルを検索する」を改造しました。
サブフォルダも含めフォルダ内のファイル一覧を作成するVBA

・VBEウィンドウの参照設定で「Microsoft Scrpting Runtime」を有効にしてください。
・取得したファイル名から、htmかhtmlの場合に表示します。
・変換フォルダ名を削除し表示します。

Sub ExFolderSearch(sSearchPath As String, lStartRow As Long, lStartCol As Long)
     Dim tFso As FileSystemObject
     
     Set tFso = New FileSystemObject
     Call ExFolderSearchSub(tFso.GetFolder(sSearchPath), lStartRow - 1, lStartCol)
     Set tFso = Nothing
 End Sub

 Private Sub ExFolderSearchSub(ByVal tPath As Folder, ByRef lRow As Long, ByVal lCol As Long)
    Dim tInPath As Folder
    Dim tFile As File
    
    For Each tInPath In tPath.SubFolders
        Call ExFolderSearchSub(tInPath, lRow, lCol)
    Next tInPath

    For Each tFile In tPath.Files
         If Right(LCase(tFile.Name), 4) = ".htm" Or Right(LCase(tFile.Name), 5) = ".html" Then
             lRow = lRow + 1
             Cells(lRow, lCol) = Mid(tPath.Path & "\", Len(Range("G2")) + 1, Len(tPath.Path & "\") _
                - Len(Range("G2"))) & tFile.Name
         End If
     Next tFile
     Set tPath = Nothing
 End Sub

実行結果です。
サブフォルダの場合はサブフォルダ名からの表示になっています。
サブフォルダの場合はサブフォルダ名からの表示

スポンサーリンク






AMP変換ソフト作成 メニューへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved