🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Aus mehreren Writer Dokmunten - Inhalt auslesen

Alles zur Programmierung im LibreOffice.
Antworten
schwammer
Beiträge: 5
Registriert: Fr 15. Jun 2018, 10:06

Aus mehreren Writer Dokmunten - Inhalt auslesen

Beitrag von schwammer » Fr 15. Jun 2018, 10:21

Hallo,

gerade programmiere ich, paar kleinere Makros in starbasic und versuche gerade mittels excel tabelle mehrere dokumente gleichzeitig zu bearbeiten,
dabei lese ich alle dateien aus einem ordner aus und gebe sie mit einem dateipfad in einem sheet aus.
jetzt möchte ich in jedem writer dokument die Tabelle(0) an der Position (1,3) auslesen. doch jetzt bekomme ich bei der methode getTextTables einen

Code: Alles auswählen

Runtime Error  
BASIC-Laufzeitfehler.
Es ist eine Ausnahme aufgetreten 
Type: com.sun.star.uno.RuntimeException
Message: .

meine zwei Methoden sehen wie folgt aus

Code: Alles auswählen

 Sub personAuslesen(zeile As integer)
 		 oDoc =   DateiVerstecktOeffnen(thisComponent.sheets(4).getCellRangeByName("C" + zeile).String
  	
  		Tables = oDoc.getTextTables
   		Table=Tables.getbyIndex(0)
   
   		'Inhalt zurücksetzen
   		thisComponent.sheets(4).getCellRangeByName("A" & zeile).string = Table.getCellbyPosition(1,3).String
 End Sub
 
Sub DateiVerstecktOeffnen(datei As String ) As New Object

    url=converttourl(datei)
    dim myFileProp(0) as New com.sun.star.beans.PropertyValue
    myFileProp(0).name="Hidden"
    myFileProp(0).value=True
    oDocument = StarDesktop.loadComponentFromURL(url, "_blank", 0, myFileProp() )
    DateiVerstecktOeffnen = oDocument
    
 	oDocument.Close(-1)
 	
 	
    
End sub
und das ist meine for schleife

Code: Alles auswählen

  	For i=2 To counter 
  	personAuslesen(i)
  
  	
  	i = i +1 
  	Next i 
Ich hab leider keine Idee, woran es liegen könnte.

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Aus mehreren Writer Dokmunten - Inhalt auslesen

Beitrag von mikele » Fr 15. Jun 2018, 12:27

Hallo,
warum schließt du die Datei

Code: Alles auswählen

oDocument.Close(-1)
bevor du die Daten ausliest?
Gruß,
mikele

schwammer
Beiträge: 5
Registriert: Fr 15. Jun 2018, 10:06

Re: Aus mehreren Writer Dokmunten - Inhalt auslesen

Beitrag von schwammer » Fr 15. Jun 2018, 14:44

Ja daran hat es gelegen. musste es umschreiben und erst danach schließen lassen.
dann funktioniert es ^^


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten