[gelöst] Kann Datei öfnnen aber nicht Tabelle springen

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

Moderator: Moderatoren

kilix
****
Beiträge: 128
Registriert: So, 09.04.2023 11:27

[gelöst] Kann Datei öfnnen aber nicht Tabelle springen

Beitrag von kilix »

Hallo,
wieder eine Bitte, um Hilfe:
ich will mit einem Makro eine andere Datei öffnen und in dieser Datei auf die Tabelle3 wechseln. Das Öffnen der Datei schaffe ich aber der Sprung auf die Tabelle3 gelingt mir nicht. Ich habe den von mir verwendeten Code beigelegt:

Code: Alles auswählen

sub Datei

'Zugriff auf die aktuelle Datei
	oDoc=ThisComponent

	'Öffnen der ods-Datei
	Dim args(1) as New com.sun.star.beans.PropertyValue
	args(0).Name= "FilterName"
	args(0).Value = "Text - txt - ods (StarCalc)"
	
	'Aktuelles Verzeichnis einlesen und Datei.ods öffnen
	surl = thiscomponent.url
	apfad = split(surl,"/")
	apfad(ubound(apfad)) = "Datei.ods"
   	sURL = convertToURL(join(apfad,"/"))
   	oODS = StarDesktop.LoadComponentFromURL(sURL, "_blank", 0, args())
   	
   	'Auf Tabelle3 springen
	oView = oODS.CurrentController
	oSheet = oODS.Sheets(3)
	oView.setActiveSheet(oSheet)

end sub
Der Fehler liegt offenbar in den letzten 3 Zeilen. Allerdings verstehe ich auch diese Zeile nicht: args(0).Value = "Text - txt - ods (StarCalc)". Ich habe sie aus einem Codebeispiel für das Einlesen einer CSV-Datei. Sie stört hier offenbar nicht aber ihren Sinn verstehe ich nicht.
Vielen Dank für eure Hilfe!
Zuletzt geändert von kilix am Fr, 02.06.2023 10:30, insgesamt 1-mal geändert.
Grüße
kilix
mikeleb
*******
Beiträge: 1321
Registriert: Fr, 09.12.2011 16:50

Re: Kann Datei öfnnen aber nicht Tabelle springen

Beitrag von mikeleb »

Hallo,
Die Zählung beginnt bei 0. Die 3. Tabelle erreichst du per .Sheets(2)
Oder
.Sheets.getByName("Tabelle3")
Gruß,
mikeleb
kilix
****
Beiträge: 128
Registriert: So, 09.04.2023 11:27

Re: Kann Datei öfnnen aber nicht Tabelle springen

Beitrag von kilix »

Ich habe da inzwischen was heraus gefunden (an der Sheetnummer liegt es nicht, diese Nummerierung ist mir bekannt). Das Problem war folgendes:
Ich habe das gestern am Abend nicht gesehen weil es funktioniert hat aber als ich es heute nochmals machte bekam ich eine Fehlermeldung. Nach etwas probieren hab ich's dann gefunden:
Falsch war, dass ich für das Öffnen von Dokumenten Makros schrieb, die ich unter "Meine Makros" speicherte. Als ich diesen Makro in das Dokument speicherte funktionierte das Öffnen.
Allerdings habe ich auch gesehen, dass ich dazu keine Makros brauche weil diesen Vorgang auch unter Aktion mit URL eintragen kann.
Diese Frage erscheint mir damit als beantwortet.

Bleibt noch die zweite Frage:
Was bedeutet dieses Zeilen (die ich einfach, etwas geändert; aus deinem Code für das Einlesen einer CSV-DAtei übernommen habe:?

args(0).Name= "FilterName"
args(0).Value = "Text - txt - ods (StarCalc)"

Ich habe lediglich "csv" durch "ods" verändert. Das hatte aber scheinbar keine Auswirkung? Den kompletten Code habe ich in meinen ersten Beitrag eingefügt.
Grüße
kilix
Antworten