Zeilen einer TXT datei in spalten bringen
#1
Hallo, ich habe eine Waage gekauft die versch. Daten erfasst und diese in folgender Form als TXT datei abspeichert:

                                                                                                                                                                                                                                                                                                                                                                                                                                          

                                                                                                                                                                                                                                                                                                                                                                             
KörperGewicht77.5kg   Overweight
Wasseranteil56.2%   Standard
KörperfettAnteil18.1%   Chubby
Knochengewicht3.1kg   Inadequate
Visceral fat:8.0   Standard
BMR:1906.0 kcal   Optimal
MuskelGewicht60.3kg   Optimal
BMI:24.2   Chubby


Time:07:50, Tues,4/ 10/2018
KörperGewicht76.5kg   Overweight
Wasseranteil56.7%   Standard
KörperfettAnteil17.4%   Chubby
Knochengewicht3.1kg   Inadequate
Visceral fat:8.0   Standard
BMR:1888.0 kcal   Optimal
MuskelGewicht60.1kg   Optimal
BMI:23.9   Standard


Time:21:08, Sat,4/ 7/2018
KörperGewicht77.8kg   Overweight
Wasseranteil56.6%   Standard
KörperfettAnteil17.5%   Chubby
Knochengewicht3.2kg   Standard
Visceral fat:8.0   Standard
BMR:1911.0 kcal   Optimal
MuskelGewicht61.0kg   Optimal
BMI:24.3   Chubby


Time:09:08, Sat,3/ 31/2018
KörperGewicht78.2kg   Overweight
Wasseranteil56.4%   Standard
KörperfettAnteil17.9%   Chubby
Knochengewicht3.2kg   Standard
Visceral fat:8.0   Standard
BMR:1918.0 kcal   Optimal
MuskelGewicht61.1kg   Optimal
BMI:24.4   Chubby



ich würde gerne Graphen davon erstellen.


Wie kann ich diese Daten in eine Excel Tabelle bringen, so dass für jede Kategorie eine Spalte erstellt wird?

Vielen Dank für eure Hilfe!
Top
#2
Hi,

die abgebildeten Daten werden tatsächlich so abgespeichert? Keine Trennung zwischen den Worten (z.B. KörperfettAnteil18.1%)?
Dann, fürchte ich, wird, wenn überhaupt, nur VBA helfen können. Mit Bordmitteln, wie z.B. "Text in Spalten", bekommst du diese Daten wegen fehlenden Merkmalen nicht getrennt.
Vllt. meldet sich ja einer der VBA-Spezialisten.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#3
Hallo

Mit Power Query sollte es möglich sein die Daten passend zu transformieren.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#4
Hi Detlef,

mit PQ habe ich mich bislang noch so gut wie gar nicht beschäftigt. Benötigt man dort keine Eindeutigkeit, um die Daten aufzubereiten? Ich denke da an die zusammengeschriebenen Texte wie in meinem vorigen Beitrag.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#5
Günter,

ich habe es noch nicht getestet. Für einen Test hätte ich auch gerne eine Original-Textdatei (unbearbeitet).
Auch wollte ich erst mal abwarten ob der Fragesteller sich überhaupt auf PQ einlassen möchte.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#6
Off Topic:
Ich hasse meine Waage und entferne ab und an die Batterien, so dass ich sie problemlos besteigen kann …  Angel
Aber für alle BMI-ler gilt ja ohnehin folgender Leitspruch:
Man ist niemals zu schwer für seine Größe, aber man ist oft zu klein für sein Gewicht.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#7
Hi, Danke für die antworten!




Die unbearbeitete Datei habe ich angehängt. Ich hatte zuvor die Begriffe auf deutsch übersetzt, weil die App sie auf englisch ausgibt.

Wenn das Problem aber nur die Leerzeichen sind, das kann ich ja in Word mit suchen und ersetzen machen, indem ich einfach das Wort mit demselben Wort + Leerzeichen ersetze.

Ich wollte die Kategorien in Spalten und die Daten darunter stehen haben. Ich habe die Option Text in Spalten gefunden, aber ich weiß nicht wie ich es so einstellen kann dass es untereinander steht. Alles was ich geschafft habe ist die Zahlen vom Doppelpunkt zu trennen, in zwei Spalten.

EDIT: PowerQuery ist in meiner Version bereits installiert, und ja, ich lasse mich gerne darauf ein.


Angehängte Dateien
.txt   myrecords .txt (Größe: 4,59 KB / Downloads: 22)
Top
#8
Hallo, mit dem Material (quick & dirty) ..:

Arbeitsblatt mit dem Namen 'Tabelle3'
ABCDE
1DatumWochentagWaswie vielAuswertung
211.04.2018MittwochTime00:35
3Weight77.5kgOverweight
4Body water56.2%Standard
5Body fat18.1%Chubby
6Bone Mass3.1kgInadequate
7Visceral fat8.0Standard
8BMR1906.0 kcalOptimal
9Muscle Mass60.3kgOptimal
10BMI24.2Chubby
1110.04.2018DienstagTime07:50
12Weight76.5kgOverweight
13Body water56.7%Standard
14Body fat17.4%Chubby
15Bone Mass3.1kgInadequate
16Visceral fat8.0Standard
17BMR1888.0 kcalOptimal
18Muscle Mass60.1kgOptimal
19BMI23.9Standard
2007.04.2018SamstagTime21:08
21Weight77.8kgOverweight
22Body water56.6%Standard
23Body fat17.5%Chubby
24Bone Mass3.2kgStandard
25Visceral fat8.0Standard
26BMR1911.0 kcalOptimal
27Muscle Mass61.0kgOptimal
28BMI24.3Chubby
2931.03.2018SamstagTime09:08
30Weight78.2kgOverweight
31Body water56.4%Standard
32Body fat17.9%Chubby
33Bone Mass3.2kgStandard
34Visceral fat8.0Standard
35BMR1918.0 kcalOptimal
36Muscle Mass61.1kgOptimal
37BMI24.4Chubby
Verwendete Systemkomponenten: [Windows (32-bit) NT :.00] MS Excel 2013
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg


PHP-Code:
let
    Quelle 
Excel.CurrentWorkbook(){[Name="Mass"]}[Content],
 
   #"Abgeschnittener Text" = Table.TransformColumns(Quelle,{{"Column3", Text.Trim, type text}}),
 
   #"Bereinigter Text" = Table.TransformColumns(#"Abgeschnittener Text",{{"Column3", Text.Clean, type text}}),
 
   #"Spalte nach Trennzeichen teilen" = Table.SplitColumn(#"Bereinigter Text", "Column3", Splitter.SplitTextByDelimiter("/", QuoteStyle.Csv), {"Column3.1", "Column3.2", "Column3.3"}),
 
   #"Geänderter Typ" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen",{{"Column3.1", Int64.Type}, {"Column3.2", Int64.Type}, {"Column3.3", Int64.Type}}),
 
   #"Neu angeordnete Spalten" = Table.ReorderColumns(#"Geänderter Typ",{"Column1", "Column2", "Column3.2", "Column3.1", "Column3.3"}),
 
   #"Zusammengeführte Spalten" = Table.CombineColumns(Table.TransformColumnTypes(#"Neu angeordnete Spalten", {{"Column3.2", type text}, {"Column3.1", type text}, {"Column3.3", type text}}, "de-DE"),{"Column3.2", "Column3.1", "Column3.3"},Combiner.CombineTextByDelimiter(".", QuoteStyle.None),"Datum"),
 
   #"Ersetzter Wert" = Table.ReplaceValue(#"Zusammengeführte Spalten","..","",Replacer.ReplaceText,{"Datum"}),
 
   #"Geänderter Typ1" = Table.TransformColumnTypes(#"Ersetzter Wert",{{"Datum", type date}}),
 
   #"Entpivotierte Spalten" = Table.UnpivotOtherColumns(#"Geänderter Typ1", {"Column2", "Datum"}, "Attribut", "Wert"),
 
   #"Entfernte Spalten" = Table.RemoveColumns(#"Entpivotierte Spalten",{"Attribut"}),
 
   #"Name des Tags eingefügt" = Table.AddColumn(#"Entfernte Spalten", "Name des Tags", each Date.DayOfWeekName([Datum]), type text),
 
   #"Entfernte Spalten1" = Table.RemoveColumns(#"Name des Tags eingefügt",{"Column2"}),
 
   #"Neu angeordnete Spalten1" = Table.ReorderColumns(#"Entfernte Spalten1",{"Name des Tags", "Datum", "Wert"}),
 
   #"Spalte nach Trennzeichen teilen1" = Table.SplitColumn(#"Neu angeordnete Spalten1", "Wert", Splitter.SplitTextByEachDelimiter({":"}, QuoteStyle.Csv, false), {"Wert.1", "Wert.2"}),
 
   #"Geänderter Typ2" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen1",{{"Wert.1", type text}, {"Wert.2", type text}}),
 
   #"Spalte nach Trennzeichen teilen2" = Table.SplitColumn(#"Geänderter Typ2", "Wert.2", Splitter.SplitTextByEachDelimiter({" "}, QuoteStyle.Csv, true), {"Wert.2.1", "Wert.2.2"}),
 
   #"Geänderter Typ3" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen2",{{"Wert.2.1", type text}, {"Wert.2.2", type text}}),
 
   #"Neu angeordnete Spalten2" = Table.ReorderColumns(#"Geänderter Typ3",{"Datum", "Name des Tags", "Wert.1", "Wert.2.1", "Wert.2.2"}),
 
   #"Umbenannte Spalten" = Table.RenameColumns(#"Neu angeordnete Spalten2",{{"Name des Tags", "Wochentag"}, {"Wert.1", "Was"}, {"Wert.2.1", "wie viel"}, {"Wert.2.2", "Auswertung"}})
in
    
#"Umbenannte Spalten" 
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#9
Jörg, wie kommst du auf drei Spalten?
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#10
Hallo Detlef, ich habe eh' gesehen, dass der TE das anders haben will... Aber ich krieg's für mich noch nicht schön... Wie würdest du das denn machen..?

Ich habe noch zwei Fehlerwerte (bei den Uhrzeiten) drin... wo die herkommen, weiß ich nicht... wie die wech gehen (auch noch) nicht..:

Aber das kommt dem doch schon näher, oder?

Arbeitsblatt mit dem Namen 'Tabelle3'
ABCDEFGHIJ
1DatumTimeWeightBody waterBody fatBone MassVisceral fatBMRMuscle MassBMI
221.03.2018
322.03.201808:3277,3 kg56,417,73,18,01902,060,524,1
423.03.201815:4176,2 kg56,917,13,18,01883,060,123,8
525.03.201823:5078,4 kg55,818,73,18,01921,060,624,5
627.03.201800:3077,1 kg56,517,73,18,01899,060,324,1
728.03.2018
829.03.201809:1676,5 kg56,817,23,18,01888,060,223,9
930.03.201809:1977,4 kg56,517,63,18,01904,060,624,2
1031.03.201809:0878,2 kg56,417,93,28,01918,061,124,4
1107.04.201821:0877,8 kg56,617,53,28,01911,06124,3
1210.04.201807:5076,5 kg56,717,43,18,01888,060,123,9
1311.04.201800:3577,5 kg56,218,13,18,01906,060,324,2
Verwendete Systemkomponenten: [Windows (32-bit) NT :.00] MS Excel 2013
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste