Tabelle über Namen auswählen?

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Carolyn
Beiträge: 4
Registriert: Mo, 21.11.2005 00:52

Tabelle über Namen auswählen?

Beitrag von Carolyn »

Hallo,
ich muss über ein Makro in ein bestimme Tabelle wechseln. Der Recorder liefert mir auch einen Ansatz:

Code: Alles auswählen

args(0).Name = "Nr"
args(0).Value = 5
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args())
nur habe ich das Probelm, das die Tabelle nicht immer "Nr. 5" sein wird, weil sich das Dokument ändern kann. Gibt es eine Möglichkeit die Tabelle per Namen aufzurufen?

das geht definitiv nicht: ;)

Code: Alles auswählen

args(0).Name = "temp"
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args())
Danke schonmal
Caro

... ein Link zur entsprechenden Stelle in der Doku wäre auch hilfreich .... google ist nicht fündig geworden ...
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Carolyn,
Gibt es eine Möglichkeit die Tabelle per Namen aufzurufen?
Sicher :wink: Daqs ist eine der einfachsten Übungen.

Aber: Nutz nicht den Dispatcher Code - (den vom Makrorecorder) - schreib "native" Basic-Code.

Code: Alles auswählen

sub TabelleBekommen
  oDoc = thisComponent    'dein dokument
  oSheet = oDoc.sheets.getByName("temp")  'Deine Tabelle nach Namen
  '...
  '... Dein Code
  REM   willst du das tabellenblatt aktiv haben und den Cursor in Zelle A1 plazieren:
  oCon = oDoc.getCurentController()   'den Controller
  oZelle = oSheet.getCellRangeByName("A1")   ' die Zelle
  oCon.select(oZelle)   'aktiviert und angezeigt
end sub
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Carolyn
Beiträge: 4
Registriert: Mo, 21.11.2005 00:52

Beitrag von Carolyn »

Toxitom hat geschrieben: Sicher :wink: Daqs ist eine der einfachsten Übungen.
jetzt, wo es läuft, geb ich dir recht - irgendwie hatte ich heute morgen 'nen Knoten im Kopf
oCon = oDoc.getCurentController() 'den Controller
und nachdem ich deine Falle gefunden hatte ;) , war dann auch der Rest kein Problem mehr

Vielen Dank!
Caro
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Caro,

ok, ok, war keine Absicht :wink:

kommt vom Schnellschreiben....

Aber du hast es ja gefunden.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Antworten