【bat】リストを使用してファイルを移動

コードは以下の通り。

@echo off
set "sourceFolder=C:\元のフォルダのパス"
set "destinationList=C:\移動先のファイル・パスのリスト.txt"

if exist "%destinationList%" (
    for %%a in ("%sourceFolder%\*.*") do (
        set "fileName=%%~nxa"
        set "destinationPath="
        
        rem 指定したファイル名に一致する行を検索し、パスを取得
        for /f "usebackq tokens=1,* delims=," %%b in ("%destinationList%") do (
            if /i "%%b"=="%fileName%" (
                set "destinationPath=%%c"
                goto MoveFile
            )
        )
        
        echo ファイル "!fileName!" の移動先が見つかりませんでした。
        goto ContinueLoop
        
        :MoveFile
        move "%sourceFolder%\!fileName!" "%destinationPath%\"
        echo ファイル "!fileName!""!destinationPath!" に移動されました.
        
        :ContinueLoop
    )
) else (
    echo 移動先のファイル・パスのリストが見つかりませんでした。
)

pause

【VBA】複数のHTMLファイルを一括でExcelに変換

コードは以下の通り。

Sub ConvertHTMLtoExcel()
    Dim FolderPath As String
    Dim HTMLFile As String
    Dim ExcelApp As Object
    Dim wb As Object
    
    ' 変換元のHTMLファイルが格納されているフォルダのパスを指定します
    FolderPath = "C:\Your\Folder\Path\" ' パスを適切に変更してください
    
    ' Excelアプリケーションを起動します
    Set ExcelApp = CreateObject("Excel.Application")
    ExcelApp.Visible = True ' Excelを表示する場合はTrue、非表示にする場合はFalse
    
    ' 指定されたフォルダ内のすべてのHTMLファイルに対して処理を行います
    HTMLFile = Dir(FolderPath & "*.html")
    Do While HTMLFile <> ""
        ' 新しいワークブックを作成します
        Set wb = ExcelApp.Workbooks.Add
        
        ' HTMLファイルを開いてデータを取り込みます
        With wb.Worksheets(1).QueryTables.Add(Connection:="TEXT;" & FolderPath & HTMLFile, Destination:=Range("A1"))
            .TextFileParseType = xlDelimited
            .TextFileOtherDelimiter = ""
            .Refresh BackgroundQuery:=False
        End With
        
        ' Excelファイルとして保存します
        wb.SaveAs FolderPath & Left(HTMLFile, Len(HTMLFile) - 4) & ".xlsx", FileFormat:=51 ' xlsx形式で保存
        wb.Close False ' ワークブックを閉じます
        
        ' 次のHTMLファイルに移動します
        HTMLFile = Dir
    Loop
    
    ' Excelアプリケーションを終了します
    ExcelApp.Quit
    Set ExcelApp = Nothing
End Sub