0
0

【VBA】ファイル作成マクロ

Last updated at Posted at 2024-08-07

ファイル作成マクロの作成方法について

VBA (Visual Basic for Applications) を使って新しいファイルを作成するマクロを作成するのは比較的簡単です。以下は、Excel VBA を使って新しい Excel ワークブックを作成し、指定したパスに保存するサンプルコードです。

CreateNewWorkbook
Sub CreateNewWorkbook()
    Dim newWorkbook As Workbook
    Dim filePath As String
    
    ' 新しい Excel ワークブックを作成
    Set newWorkbook = Workbooks.Add
    
    ' 保存先のパスとファイル名を指定
    filePath = "C:\Path\To\Your\Directory\NewFile.xlsx"
    
    ' 新しいワークブックを指定したパスに保存
    newWorkbook.SaveAs filePath
    
    ' 新しいワークブックを閉じる
    newWorkbook.Close
    
    ' 変数のクリア
    Set newWorkbook = Nothing
    
    ' メッセージボックスで完了を通知
    MsgBox "新しいワークブックが作成され、保存されました。", vbInformation
End Sub

コードの説明

  1. Dim newWorkbook As Workbook
    新しいワークブックを格納するための変数を宣言します。

  2. Set newWorkbook = Workbooks.Add
    新しいワークブックを作成して変数にセットします。

  3. filePath = "C:\Path\To\Your\Directory\NewFile.xlsx"
    新しいファイルの保存先とファイル名を指定します。自分の環境に合わせてパスとファイル名を変更してください。

  4. newWorkbook.SaveAs filePath
    指定したパスに新しいワークブックを保存します。

  5. newWorkbook.Close
    ワークブックを閉じます。

  6. Set newWorkbook = Nothing
    変数をクリアして、リソースを解放します。

  7. MsgBox "新しいワークブックが作成され、保存されました。", vbInformation
    完了を知らせるメッセージボックスを表示します。

他のファイルタイプの作成

もし Excel 以外のファイルタイプ(例えばテキストファイル)を作成したい場合は、FileSystemObject を使って以下のように書き換えます:

Sub CreateNewTextFile()
    Dim fso As Object
    Dim file As Object
    Dim filePath As String
    
    ' FileSystemObject を作成
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    ' 新しいテキストファイルのパスを指定
    filePath = "C:\Path\To\Your\Directory\NewFile.txt"
    
    ' テキストファイルを作成
    Set file = fso.CreateTextFile(filePath, True)
    
    ' テキストファイルに書き込む内容
    file.WriteLine "Hello, World!"
    
    ' テキストファイルを閉じる
    file.Close
    
    ' 変数のクリア
    Set file = Nothing
    Set fso = Nothing
    
    ' メッセージボックスで完了を通知
    MsgBox "新しいテキストファイルが作成されました。", vbInformation
End Sub

このコードは、指定されたパスに新しいテキストファイルを作成し、"Hello, World!" と書き込みます。

必要に応じてコードを調整し、目的に合わせてファイルを作成してみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0