Office Space: Excel ワークシートの名前を変更する
Office Space へようこそ。Office Space は、Microsoft® Office アプリケーションのスクリプト作成に関するヒントとテクニックを紹介する新しいコラムです。過去のヒントについては、Office Space アーカイブを参照してください。Microsoft Office でのスクリプト作成について質問がある場合は、scripter@microsoft.com (英語のみ) までお送りください。すべての質問に回答することはできないかもしれませんが、可能な限り対応いたします。
Excel ワークシートの名前を変更する
以前のコラムで、ワークシートの名前を指定するだけで Excel ワークブック内の任意のワークシートが参照できること (そして作業できること) を紹介しました。たとえば、次の短いスクリプトは、Sheet2 という名前のワークシートのセル A1 にテキストを入力します。
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = TRUE
objExcel.Workbooks.Add
Set objWorksheet = objExcel.Worksheets("Sheet2")
objWorksheet.Activate
objWorksheet.Cells(1, 1).Value = "A"
覚えているでしょうか。ただし、説明しなかったことがあります。それは、スクリプトを使ってワークシートの名前を変更できるということです。次のスクリプトは、Sheet2 にバインドし、その名前を "March 2005 Inventory Report" に変更します。
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = TRUE
objExcel.Workbooks.Add
Set objWorksheet = objExcel.Worksheets("Sheet2")
objWorksheet.Activate
objWorksheet.Name = "March 2005 Inventory Report"
まず、Microsoft Excel のインスタンスを作成し、Visible プロパティを TRUE に設定します。これにより、スクリプトの動作を確認することができます。次に、新しいワークブックを作成し、Sheet2 にバインドして、そのワークシートをアクティブにします。
後はワークシートの名前を変更するコード行を追加するだけです。次のように、Name プロパティに目的の名前を設定すれば完成です。
objWorksheet.Name = "March 2005 Inventory Report"