StarBasic? Gibt´s da Versionen oder so was und wie erkennt man die ggf.?)
Ja heißt wohl so, mir ist nicht bekannt das die Bezeichnung OOo-Basic gebräuchlich wäre. Meiner Kenntnis nach ist die Sprache für SO6 und SO7 gleich (OOo1.x/1.1.x) die Sprache von S05.2 ist (völlig) verschieden über andere Versionen weiß ich nichts.
myDoc = stardesktop.currentcomponent
'Bedeutet wohl die gerade verwendete Datei (oder Tabelle oder ?) wird auf - hä? - gesetzt
myDoc ist Objektvariable und das andere siehst Du im Grundsatz richtig - detaillierte Erklärung ist etwas umfassend, es gibt hier im Forum irgendwo eine sehr treffende Beschreibung zu der Thematik von "Toxitom" suche nach Stichwort "ThisComponent"
For datensatz = 2 To 8
'Für die "datensatz" genannte Variable (vom Typ ?) von 2 bis 8 (ist damit schon klar, dass "datensatz" eine Zeile einer Calc-Tabelle ist?
Typ ist Variant weil ich sie nicht deklariert habe (das weiß ich nur weil ich das gesamte Makro kenne denn die eine Zeile gibt diese Information nicht - nötig ist Variant jedoch nicht, ich war nur zu faul eine Deklaration in den Code zu schreiben)
Nein, damit ist nicht klar das es sich um eine Zeile handelt, der Inhalt von datensatz ist nur eine Zahl
mieter = myDoc.getSheets().getByName("Mieterliste").getCellByPosition(8,datensatz-1)
'Die (neue) Variable "mieter" (vom Typ?) ist, bzw. hat den Inhalt aus der Zelle mit der Position, bzw. Spalte 8 des ersten Datensatzes???
mieter ist vom Typ 'Object' der Inhalt von mieter entspricht somit dem Zellobjekt, das ist
NICHT der Mietername (Zellinhalt) sondern im Prinzip die gesamte Zelle mit allen ihren Inhalten/Eigenschaften,das was Du meinst entspricht mieter.string
Die Zeile würde ich so wiedergeben (nicht ganz exakte Beschreibung):
myDoc --> das (Calc-)Dokument
getSheets -->Verweis auf alle Tabellenblätter
getByName("Mieterliste") -->Verweis auf das Blatt mit Namen Mieterliste
getCellByPosition(8,datensatz-1)--> Verweis auf bestimmte Zelle
8 entspricht Spalte 9 also I (Spalte A entspricht 0)
datensatz-1 entspricht der aktuellen Zeile, (Zeile 1 entspricht 0) falls also datensatz gerade 2 ist sind wir in Zeile 2 (im Code entspricht das 1 weil Zählung bei 0 beginnt)
Du könntest auch so schreiben:
For datensatz = 1 To 7
mieter = myDoc.getSheets().getByName("Mieterliste").getCellByPosition(8,datensatz)
Ich habe die entsprechende Spalte schon nach vorne als erste gezogen, weswegen es jetzt wohl heißen müsste "...(1,datensatz-1)" - oder?
wenn das in Spalte A steht dann (0,datensatz-1)
Gruß
Stephan
[quote]StarBasic? Gibt´s da Versionen oder so was und wie erkennt man die ggf.?) [/quote]
Ja heißt wohl so, mir ist nicht bekannt das die Bezeichnung OOo-Basic gebräuchlich wäre. Meiner Kenntnis nach ist die Sprache für SO6 und SO7 gleich (OOo1.x/1.1.x) die Sprache von S05.2 ist (völlig) verschieden über andere Versionen weiß ich nichts.
[quote]myDoc = stardesktop.currentcomponent
'Bedeutet wohl die gerade verwendete Datei (oder Tabelle oder ?) wird auf - hä? - gesetzt[/quote]
myDoc ist Objektvariable und das andere siehst Du im Grundsatz richtig - detaillierte Erklärung ist etwas umfassend, es gibt hier im Forum irgendwo eine sehr treffende Beschreibung zu der Thematik von "Toxitom" suche nach Stichwort "ThisComponent"
[quote]For datensatz = 2 To 8
'Für die "datensatz" genannte Variable (vom Typ ?) von 2 bis 8 (ist damit schon klar, dass "datensatz" eine Zeile einer Calc-Tabelle ist?[/quote]
Typ ist Variant weil ich sie nicht deklariert habe (das weiß ich nur weil ich das gesamte Makro kenne denn die eine Zeile gibt diese Information nicht - nötig ist Variant jedoch nicht, ich war nur zu faul eine Deklaration in den Code zu schreiben)
Nein, damit ist nicht klar das es sich um eine Zeile handelt, der Inhalt von datensatz ist nur eine Zahl
[quote]mieter = myDoc.getSheets().getByName("Mieterliste").getCellByPosition(8,datensatz-1)
'Die (neue) Variable "mieter" (vom Typ?) ist, bzw. hat den Inhalt aus der Zelle mit der Position, bzw. Spalte 8 des ersten Datensatzes??? [/quote]
mieter ist vom Typ 'Object' der Inhalt von mieter entspricht somit dem Zellobjekt, das ist [b]NICHT[/b] der Mietername (Zellinhalt) sondern im Prinzip die gesamte Zelle mit allen ihren Inhalten/Eigenschaften,das was Du meinst entspricht mieter.string
Die Zeile würde ich so wiedergeben (nicht ganz exakte Beschreibung):
myDoc --> das (Calc-)Dokument
getSheets -->Verweis auf alle Tabellenblätter
getByName("Mieterliste") -->Verweis auf das Blatt mit Namen Mieterliste
getCellByPosition(8,datensatz-1)--> Verweis auf bestimmte Zelle
8 entspricht Spalte 9 also I (Spalte A entspricht 0)
datensatz-1 entspricht der aktuellen Zeile, (Zeile 1 entspricht 0) falls also datensatz gerade 2 ist sind wir in Zeile 2 (im Code entspricht das 1 weil Zählung bei 0 beginnt)
Du könntest auch so schreiben:
For datensatz = 1 To 7
mieter = myDoc.getSheets().getByName("Mieterliste").getCellByPosition(8,datensatz)
[quote]Ich habe die entsprechende Spalte schon nach vorne als erste gezogen, weswegen es jetzt wohl heißen müsste "...(1,datensatz-1)" - oder? [/quote]
wenn das in Spalte A steht dann (0,datensatz-1)
Gruß
Stephan