Aktuální dokument
Na aktuální dokument je možné se odkázat pomocí ThisComponent
.
Dim oDoc As Object oDoc = ThisComponent
Typ dokumentu můžeme zkontrolovat pomocí následující funkce:
Function IsSpreadsheetDocument( oDoc As Object ) As Boolean IsSpreadsheetDocument = oDoc.supportsService( "com.sun.star.sheet.SpreadsheetDocument" ) End Function
Otevření dokumentu
Dim oDoc As Object oDoc = StartDesktop.loadComponentFromURL( ConvertToURL( "/home/robert/abc.xls" ), "_blank", _0, Array() )
Aktuální list
Dim oSheet As Object oSheet = oDoc.getCurrentController.getActiveSheet
Počet listů dokumentu
Dim nNoLists As Integer nNoLists = oDoc.Sheets.Count ' nebo nNoLists = oDoc.getSheets.getCount
Přístup k listu podle jména
Dim oSheet As Object oSheet = oDoc.getSheets.getByName( "jméno listu" )
Přístup k listu podle čísla
Všechny listy jsou číslovány od 0. Následující příklad uloží do proměnné oSheet
odkaz na druhý list.
Dim oSheet As Object oSheet = oDoc.getSheets.getByIndex( 1 )
Nebo:
oSheet = oDoc.Sheets( 1 )
Iterace listy dokumentu
Dim oSheet As Object Dim eSheets As Object eSheets = oDoc.getSheets.createEnumeration While eSheets.hasMoreElements oSheet = eSheets.nextElement() MsgBox "Jméno dalšího listu: " & oSheet.getName & "." Wend
Nový list
Dim oSheet As Object oSheet = oDoc.createInstance( "com.sun.star.sheet.Spreadsheet" ) oDoc.Sheets.insertByName( "jméno nového listu", oSheet )