• 虹色ミツバチ
  • freoカスタマイズメモ、テンプレート・プラグイン配布/officeTIPS
検索プラグイン
虹色ミツバチ

> Entry >MOS>Microsoft Office Excel>マクロ/VBA> 選択した複数のファイルに同じ処理をするVBA例

【MOS】【Microsoft Office Excel】【マクロ/VBA】選択した複数のファイルに同じ処理をするVBA例

ファイルを開くダイアログを表示し、選択した複数のファイルに同じ作業を行うときのコードサンプルです。

例として、複数のCSVファイルに

  1. 開く
  2. A1セルの値を変更する
  3. 上書き保存する
  4. 閉じる

を繰り返して行うものとします。

Sub Open_File_Edit()
'====================================================================================
' 複数のCSVファイルを選択し、同じ作業を繰り返すマクロ
'====================================================================================
'//ファイルを開くダイアログを開く
    selectFileName = _
        Application.GetOpenFilename( _
            FileFilter:="CSVファイル(*.csv),*.csv", _
            FilterIndex:=1, _
            Title:="読み込むファイルを選択してください。", _
            MultiSelect:=True _
        )
'//選択したファイルに対する処理
    If IsArray(selectFileName) Then
        '//全てのファイルで繰り返し処理を行う
            For Each oneFileName In selectFileName
                '//選択されたファイルを開く
                    Workbooks.Open oneFileName
                '//変数を定義
                    Dim nameCSV As String
                    Dim newCSV As Workbook
                    Dim sh1st As Worksheet
                    nameCSV = Dir(oneFileName)      'ファイル名を取得
                    Set newCSV = Workbooks(nameCSV) 'ワークブックとして定義
                    Set sh1st = newCSV.Worksheets(1) '1枚目のワークシートを定義
                '//値を変更する
                    sh1st.Range("A1").Value = "セルの値変更テスト"
                '//ワークブックを保存する
                    On Error Resume Next
                    newCSV.Save
                '//ワークブックを閉じて次へ
                    Application.DisplayAlerts = False
                    newCSV.Close
                    Application.DisplayAlerts = True
            Next
    Else
        MsgBox ("ファイルを選択しないで終了")
    End If

End Sub

 

ページ移動

関連記事

ユーティリティ

Twitter

ページ上部へ