Hallo,
Tabellen ins Calc-Dokument einfügen klappt schon, aber wie wechsele ich zwischen den Blättern?
Danke, Friedhelm
Wechseln des Tabellenbattes
Moderator: Moderatoren
Es gibt zwei Wege um auf Arbeitsblätter zuzugreifen:
Über den Namen oder über die interne Nummer.
Über den Namen:
myDoc = thisComponent
mySheet = myDoc.Sheets().getByName("Tabelle2")
Über die interne Nummer:
myDoc = thisComponent
mySheet = myDoc.Sheets(0)
Die Zählung der Sheets beginnt bei 0.
mfg
Michael
Über den Namen oder über die interne Nummer.
Über den Namen:
myDoc = thisComponent
mySheet = myDoc.Sheets().getByName("Tabelle2")
Über die interne Nummer:
myDoc = thisComponent
mySheet = myDoc.Sheets(0)
Die Zählung der Sheets beginnt bei 0.
mfg
Michael
__
FAQ zu Starbasic -> http://www.starbasicfaq.de
FAQ zu Starbasic -> http://www.starbasicfaq.de
klappt auch!
Herzlichen Dank, das klappt einfach supi.
Aber mein nächstes Problem lauert schon.
Zur Verdeutlichung schildere ich vielleicht mal die gesamte Aufgabe.
Ich möchte eine gesamte Zeile in einem Calc-Tabellenblatt markieren, ausschneiden, in ein anderes Blatt wechseln und die Zeile dort wieder einfügen.
Friedhelm
Aber mein nächstes Problem lauert schon.
Zur Verdeutlichung schildere ich vielleicht mal die gesamte Aufgabe.
Ich möchte eine gesamte Zeile in einem Calc-Tabellenblatt markieren, ausschneiden, in ein anderes Blatt wechseln und die Zeile dort wieder einfügen.
Friedhelm
Hi Friedhelm,
das Problem ist nicht so genau definiert. Es kommt z.B. darauf an, ob du Formeln oder Ergebnisse kopieren moechtest. Das nachfolgende Makro kopiert stumpf die Daten von Zeile 11 zu Zeile 11 im naechsten Blatt. Die bisherige Zeile 11 im 2. Blatt wird nach unten verschoben, die im 1. Blatt wird geloescht.
zap
das Problem ist nicht so genau definiert. Es kommt z.B. darauf an, ob du Formeln oder Ergebnisse kopieren moechtest. Das nachfolgende Makro kopiert stumpf die Daten von Zeile 11 zu Zeile 11 im naechsten Blatt. Die bisherige Zeile 11 im 2. Blatt wird nach unten verschoben, die im 1. Blatt wird geloescht.
Code: Alles auswählen
option compatible
sub zeile_ausschneiden_einfuegen
oTabellen = ThisComponent.Sheets
t1 = oTabellen.getByName("Sheet1") ' muss wahrscheinlich durch Tabelle1 ersetzt werden
t2 = oTabellen.getByName("Sheet2")
' Zeile mit Index 10 auswaehlen. Das ist die 11. Zeile, da die
' interne Zaehlung bei 0 beginnt
t1_zeile = t1.Rows.getByIndex(10)
' Daten kopieren
Daten = t1_zeile.getDataArray ()
' Zeile loeschen
t1.Rows.removeByIndex(10, 1)
' 1 Zeile an Index 10 einfuegen
t2.Rows().insertByIndex (10, 1)
t2_zeile = t2.Rows.getByIndex (10)
t2_zeile.setDataArray (Daten)
end sub