エクセルマクロの解説:同じフォルダ内の全てのブックに「テスト」という文字列を入力

 


エクセルマクロの解説:同じフォルダ内の全てのブックに「テスト」という文字列を入力

背景

 エクセルマクロを使用して、同じフォルダにある全てのブックを開かずにセルA1に「テスト」という文字列を入力する方法を解説します。この操作は、複数のブックを効率的に処理する際に便利です。

コードの概要

以下のステップでコードを実行します。

  1. フォルダ内の全てのファイルに対して処理を実行します。
  2. 各ファイルを開かずにセルA1に「テスト」という文字列を入力します。
  3. 各ファイルを保存して終了します。

コードの詳細

Sub InsertTextIntoA1AndSaveWorkbooks()
    Dim folderPath As String
    Dim fileName As String
    Dim targetCell As Range
    Dim externalWorkbook As Workbook
    
    ' フォルダパスを指定
    folderPath = ThisWorkbook.Path
    
    ' フォルダ内の全てのファイルに対して処理を実行
    fileName = Dir(folderPath & "\*.xls*")
    Do While fileName <> ""
        ' ブックを開かずにセルA1に「テスト」という文字列を入力
        On Error Resume Next
        Set externalWorkbook = Workbooks.Open(folderPath & "\" & fileName)
        If Not externalWorkbook Is Nothing Then
            Set targetCell = externalWorkbook.Sheets(1).Range("A1")
            targetCell.Value = "テスト"
            externalWorkbook.Close SaveChanges:=True
        End If
        On Error GoTo 0
        
        ' 次のファイルを処理
        fileName = Dir
    Loop
End Sub

使い方

  1. エクセルファイルを開き、VBAエディタを起動します。
  2. 新しいモジュールを作成し、上記のコードを貼り付けます。
  3. フォルダパスを適切に設定して実行します。

注意点

  • このコードは一般的な手法であり、環境によっては適切に動作しない場合があります。必要に応じてカスタマイズしてください。
  • フォルダ内の全てのファイルがエクセルブックであることを前提としています。

このブログ記事は、エクセルマクロの初心者向けに作成されており、具体的な手順とコードの解説を提供しています。必要に応じてカスタマイズして、自分の環境に合ったコードを作成してください。