Am 20.04.2012 16:53, schrieb RA Stehmann:
Allerdings ohne Grundkenntnisse in der StarBasic-Programmierung
voraussetzen zu können ist das kaum zu vermitteln.

Hallo Michael,

danke für die Links. Damit habe ich jetzt herausgefunden, wie es geht. Hier das Ergebnis:

Sub InsertSheets()
    Dim oDoc as Object
    Dim oSheets as Object 'Sheet-Objekt aller Tabellenblätter
    Dim oSheet as Object  'Einzelnes Tabellenblatt
    Dim s as String       'Stringvariable
    Dim i As Integer      'Indexvariable

    oDoc = StarDesktop.CurrentComponent
    oSheets = oDoc.Sheets
    oSheet = oSheets(0)

    'Standard Tabellen entfernen, wenn vorhanden
    if oSheets.hasByName("Tabelle2") then
     o Sheets.removeByName("Tabelle2")
    end if
    if oSheets.hasByName("Tabelle3") then
      oSheets.removeByName("Tabelle3")
    end if

    'neue Tabellen durchnummeriert einfügen
    for i = 0 to 51
      s = "KW" & i + 1
      if not oSheets.hasByName(s) then
        oSheets.InsertNewByName(s,i+1)
        oSheet = oSheets.getByName(s)
      end if
    next
End Sub

Die Sheets kann man mit folgender Anweisung wieder los werden:

Sub DeleteSheets()
    Dim oDoc as Object
    Dim oSheets as Object 'Sheet-Objekt aller Tabellenblätter
    Dim s as String       'Stringvariable
    Dim i As Integer      'Indexvariable

    oDoc = StarDesktop.CurrentComponent
    oSheets = oDoc.Sheets

    'Schleife zum Löschen aller Sheets außer des ersten Sheets
    Do while oSheets.getCount()-1 > 0
      i = oSheets.getCount()-1
      s = oSheets.getByIndex(i).getName
      if i <> 0 then oSheets.RemoveByName(s)
    loop
End Sub

Hier noch ein Link zu einem PDF, das ich noch gefunden und verwendet habe:
www.pitonyak.org/OOME_3_0.pdf

Viele Grüße
Rainer

---------------------------------------------------------------------

Abmelden von der Mailingliste: [email protected] Informationen: http://www.openoffice.org/de/

To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Antwort per Email an