OpenOffice.org BASICマクロで、Calcに新しい表計算シートを作成します。
ThisComponentで取得できるCalcのドキュメントには、ドキュメントにあるシートを集めたシートコレクションSheetsがあります。このシートコレクションには、新しいシートを作成し指定位置の前に挿入するinsertNewByName()メソッドがあるので、これを使うと新規シートを作成することができます。
Calcを起動し、OpenOffice.org BASICマクロの編集画面に入って、以下のマクロを実行してみてください。
Sub Main ThisComponent.Sheets.insertNewByName("testSheet", 0) End Sub
実行すると、testSheetという名前で新規シートが作成され、一番前に追加されたと思います。insertNewByName()には、最初の引数に作成するシートの名前、二番目の引数に作成したシートをどのシートの前に挿入するかを0から始まるインデックスで指定します。ただし、すでに同じ名前のシートがあるとエラーになるので注意してください。
シートを新規作成する前には、指定した名前のシートがあるか調べるシートコレクションのhasByName()メソッドで作成しようとしているシートと同じ名前のシートがあるか調べ、あれば指定の名前のシートを削除するremoveByName()で削除することもできます。
If ThisComponent.Sheets.hasByName("testSheet") Then ThisComponent.Sheets.removeByName("testSheet") End If
マクロでデータを取得し表示する際は、独自に新規の表計算シートを作成してそこに表示するようにすると、既存シートに影響を与えずにデータを表示することができるので便利でしょう。