Add について

Excel VBAのベースとなるWorkbooksオブジェクトを調べた流れで、Addメソッドについても簡単に調べてみました

■Addメソッド

・構文

構文は以下の通りです

広告

Excel.Workbooks.Add([Template])

・パラメータ

  • Template … [省略可]新しいブックの作成方法を指定

[Template]にはファイルパスを設定することもできます
[Template]を省略をすることもできます
[Template]には以下の「XlWBATemplate列挙型」が指定することもできます

XlWBATemplate列挙型

  • xlWBATChart … グラフ
  • xlWBATExcel4MacroSheet … Excel バージョン 4 のマクロ
  • xlWBATExcel4IntlMacroSheet … Excel バージョン 4 のインターナショナル マクロ
  • xlWBATWorksheet … ワークシート

「XlWBATemplate列挙型」を指定して、Addメソッドを呼び出した場合は、指定された種類のシートが作成されます

・戻り値

  • 新しく作成されたWorkbookオブジェクトを返します
広告

■例

・簡単なサンプル

Sub SampleSub()
    Dim wb  As Workbooks
    Dim w   As Workbook
    
    Set wb = Me.Application.Workbooks
	
    ' グラフのシートを指定して新しいWorkbookを作成する
    Set w = wb.Add(xlWBATChart)
    Debug.Print w.Name	' 「グラフ1」
    Set w = Nothing
    
	' Excel バージョン 4 のマクロのシートを指定して新しいWorkbookを作成する
    Set w = wb.Add(xlWBATExcel4MacroSheet)
    Debug.Print w.Name	' 「Macro1」
    Set w = Nothing
    
	' Excel バージョン 4 のインターナショナル マクロのシートを指定して新しいWorkbookを作成する
    Set w = wb.Add(xlWBATExcel4IntlMacroSheet)
    Debug.Print w.Name	' 「Macro2」
    Set w = Nothing
    
	' ワークシートのシートを指定して新しいWorkbookを作成する
    Set w = wb.Add(xlWBATWorksheet)
    Debug.Print w.Name	' 「Sheet1」
    Set w = Nothing
    
	' Sample2のファイルパスを指定して新しいWorkbookを作成する
    Set w = wb.Add("C:\Sample2.xlsx")
    Debug.Print w.Name	' 「Sample21」
    Set w = Nothing
    
	' 空白のシートを指定して新しいWorkbookを作成する
    Set w = wb.Add()
    Debug.Print w.Name	' 「Book1」
    Set w = Nothing
    
    Call wb.Close
    
    Set wb = Nothing

End Sub

・説明

Addメソッドは新規のWorkbookオブジェクトをWorkbooksオブジェクトに追加するというものです
Templateパラメータに指定するのは、新しいWorkbookを作成するのに何をテンプレートとして作成するかです

そのため、ファイル名を指定したからと言って、指定したファイルにシートを追加するのではなく、
指定したファイルの名前を引き継いだシートを追加した新しいファイルを作成するだけです

Templateパラメータを省略した場合は、馴染みのある名前「Book1」になってますが、
てっきり[xlWBATWorksheet]を指定しても同じ結果になると思ってたので、違ったことにビックリですw

・注意点

  1. Addメソッドは新規ファイルをWorkbooksオブジェクトに追加するもの
  2. ファイル名を指定してもファイルにシートが追加されるのではない!

・その他

新しいWorkbookオブジェクトの作り方はわかりました

次は既存のWorkbookの開き方について調べようと思います

ではでは

広告

やもす ʕ•͡-•ʔ

のんびり!のほほん!がモットーです!w 蕎麦食いたい ライブ行きたい 暑いの嫌い

シェアする