Textdatei per Makro in Calc Importieren

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

Moderator: Moderatoren

marcel2017
Beiträge: 2
Registriert: Fr, 27.01.2017 12:27

Textdatei per Makro in Calc Importieren

Beitrag von marcel2017 »

Hallo zusammen,

stehe gerade am Anfang mit der Programmierung von Makros und habe jetzt folgende Frage.
Ich habe eine Textdatei mit mehrern Einträgen per Semikolon getrennt.
Die ich gerne per Makro imporieren und auf verschiedene Spalten splitten möchte.
Der Import funktioniert auch schon aber wie bekomme ich die Zeilen der Textdatei gesplittet in die Spalten ?

Code: Alles auswählen

Sub Einlesen()

Dim objDatei as Object
Dim objBlaetter As Object
Dim objBlatt As Object
Dim objZelle As Object
Z = 1
 Open "C:\KAPA.txt" For Input As 1#
     Do While Not EOF(1)
         Line Input #1, Datei
        objDatei = ThisComponent
        objBlatt = objDatei.Sheets(1)
		objZelle = objBlatt.getCellByPosition(0, Z)
        objZelle.string = Datei         
        Z = Z + 1
        Loop  
      Close #1
 End Sub

Die Textdatei sieht so aus !!

Code: Alles auswählen

AuftragsNr;PositionsNr;PersonalNr;KSTNR;ZDatum;GesamtZeit
P160000;1;2003;990;02.01.2017;7,5
P160000;1;2003;990;03.01.2017;7,5
P160000;1;2003;990;04.01.2017;7,5
P160000;1;2003;990;05.01.2017;7,5
P160000;1;2003;990;06.01.2017;7,5
P160000;1;2003;930;09.01.2017;0,01666666666666660000
P170000;1;2003;930;09.01.2017;0,5333333333333330000
P161783;1;2003;401;09.01.2017;1,25
P161783;1;2003;400;09.01.2017;1,133333333333330000
P161937;1;2003;401;09.01.2017;0,25
P161937;1;2003;400;09.01.2017;3,85
P161899;1;2003;401;09.01.2017;0,1333333333333330000
P161899;1;2003;400;09.01.2017;1,116666666666660000
P161901;1;2003;401;09.01.2017;1,466666666666660000
P161901;1;2003;401;09.01.2017;0,01666666666666660000
P170000;1;2003;930;10.01.2017;0,5333333333333330000
P170042;1;2003;401;10.01.2017;1,316666666666660000
P161879;1;2003;401;10.01.2017;0,8
P161879;1;2003;400;10.01.2017;1,7
P170041;1;2003;401;10.01.2017;0,3166666666666660000
P170041;1;2003;400;10.01.2017;1,033333333333330000
P170000;1;2003;401;10.01.2017;0,5166666666666660000
P170000;1;2003;400;10.01.2017;0,6666666666666660000
P170000;1;2003;401;10.01.2017;0,15
P170000;1;2003;930;11.01.2017;0,5166666666666660000
P170048;1;2003;401;11.01.2017;0,1
P161797;1;2003;401;11.01.2017;0,7666666666666660000
P161797;1;2003;400;11.01.2017;4,633333333333330000
P161797;1;2003;400;11.01.2017;1,183333333333330000
P170000;1;2003;401;11.01.2017;0,35
P170000;1;2003;402;11.01.2017;0,4666666666666660000
P170000;1;2003;930;12.01.2017;0,5333333333333330000
P170012;1;2003;401;12.01.2017;0,5833333333333330000
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Textdatei per Makro in Calc Importieren

Beitrag von Stephan »

normalerweise würde man den Import wohl mit dem entsprechenden Filter machen, hier ist ein Beispiel:
http://oooforum.de/viewtopic.php?t=52344

Wenn Du so importieren willst wie beschrieben, sollte Folgendes gehen:

Code: Alles auswählen

Sub Einlesen()

Dim objDatei as Object
Dim objBlaetter As Object
Dim objBlatt As Object
Dim objZelle As Object
Z = 1
 Open "C:\KAPA.txt" For Input As 1#
     Do While Not EOF(1)
         Line Input #1, Datei
	einzel = Split(Datei, ";")
        objDatei = ThisComponent
        objBlatt = objDatei.Sheets(1)
	For i = 0 To Ubound(einzel())
		objZelle = objBlatt.getCellByPosition(i, Z)
		objZelle.string = einzel(i)
	Next i
        Z = Z + 1
        Loop  
      Close #1
 End Sub

Gruß
Stephan
marcel2017
Beiträge: 2
Registriert: Fr, 27.01.2017 12:27

Re: Textdatei per Makro in Calc Importieren

Beitrag von marcel2017 »

Hallo

Super perfekt großes Danke @Stephan !!!!! So wollte ich das haben.

Gruß

Marcel
PeterM1975
*
Beiträge: 16
Registriert: So, 08.03.2020 15:41

Re: Textdatei per Makro in Calc Importieren

Beitrag von PeterM1975 »

Vielen Dank,

ich habe den PC gewechselt und nun klappt es!

freu, freu, freu!!!

Vielen Dank
Peter
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Textdatei per Makro in Calc Importieren

Beitrag von F3K Total »

Hey,
du hast bestimmt im falschen Thread geantwortet, du meintest doch sicher deinen von gestern, und nicht diesen alten aus dem Jahre 2017?
Gruß R
Antworten