txt-Datei nicht korrekt eingelesen
#1
Hallo Guys,
Hallo Admins,

zuerst Euch allen noch ein verspätetes Gesundes NEUES JAHR 18 

Ich habe nun im Neuen zum 1. mal den Power Query entdeckt und muss sagen, eigentlich ein Prima Tool.

Nun  habe ich meine ersten Hochlade- / Einlese- Versuche mit  2 .txt- Dateien machen wollen, was soweit ganz gut funktionierte.

Allerdings hat Excel die Punkt-Trenner in der Spalte "TIME" nicht erkannt. Huh

Auch der mir "alte bekannte Weg" direkt externe txt-Datei korrekt einzulesen scheiterte seltsamerweise an der Spalte mit dem Punkt-Trenner.

Das riecht irgendwo nach einer falschen Hintergrund-Einstellung in meinem Excel ?? - amerikanisch-europäisches System ??

Ich hoffe, ihr könnt mein Screenshot soweit verstehen ...der im Anhang liegt.

Danke für Tipps & Tricks vorab.

Beste Grüße
stoxxii


Angehängte Dateien Thumbnail(s)
   

.txt   Blutdruck__Uwe__2014.txt (Größe: 3,83 KB / Downloads: 12)
.xlsx   Excel - Blutdruck - Daten__uwe.xlsx (Größe: 35,75 KB / Downloads: 3)
Antworten Top
#2
Moin!
Das einfachste dürfte sein, in der .txt einmal
• Strg+h
• Suchen nach: Punkt → Ersetzen durch: Doppelpunkt
zu machen und zu speichern.
Der Punkt dürfte in keinem Land dieser Welt ein gültiger Uhrzeittrenner sein.

Gruß Ralf
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)
Antworten Top
#3
Genau, ersetze den Punkt durch Doppelpunkt, allerdings in Powerquery.
Antworten Top
#4
… wobei man als erstes im PQ-Editor den automatisch gesetzten Punkt "geänderter Typ" löschen muss …
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)
Antworten Top
#5
Hallo
Ersetze deinen durch diesen M-Code.
Code:
let
    S  = Csv.Document(File.Contents("C:\Users\Uwe\Desktop\__Excel - Doku's__\__Excel - Daten import + Zell - Formate__\
         Blutdruck__Uwe__2014.txt"),[Delimiter="    ", Columns=7, Encoding=65001, QuoteStyle=QuoteStyle.None]),
    PH = Table.PromoteHeaders(S, [PromoteAllScalars=true]),
    RV = Table.ReplaceValue(PH,".",":",Replacer.ReplaceText,{"Time"}),
    CT = Table.TransformColumnTypes(RV,{{"Time", type time}, {"Day", Int64.Type}, {"Mon", Int64.Type}, {"Puls", Int64.Type},
         {"sys", Int64.Type}, {"dia", Int64.Type}})
in
    CT
Viele Grüße
PIVPQ
Antworten Top
#6
Zitat:… wobei man als erstes im PQ-Editor den automatisch gesetzten Punkt "geänderter Typ" löschen muss …

Abgesehen davon, dass man diesen Automatismus abstellen kann und sollte,  traue ich das dem OP zu.
Antworten Top
#7
Hallo DeltaX,

danke für eurere Tipps ,  aber leider raffe ich das nicht  Undecided , wie ich in P-Query  den Punkt ersetzen soll,  
 wenn der Punkt  doch bei mir gar nicht erst mit eingelesen wird ??

Klar, der Punkt ist niemals ein "geiler" TIME-Trenner. Ich habe mich damals für eines der STANDARD - Trennzeichen "Punkt" oder "Komma" entschieden.

Beste Grüße
stoxxii
Antworten Top
#8
Ok, ich nehme alles zurück und behaupte das Gegenteil.  05
Ich traue dem OP nicht mehr viel zu.

Der Punkt wird mit eingelesen, geht aber bei den automatischen Konvertierung "verloren".
Antworten Top
#9
Hi DeltaX,

naja, ich bin eben kein großer Excel - Guru wie Ihr... 21  ich sitze im moment in der Bibo, also nicht zu Hause am PC.

ich habe jetzt mal den Punkt durch Doppelpunkt direkt in der Txt-Datei ausgetauscht, was ja easy klappt.

Bloß das nützt doch dann auch nix, wenn,  wie Du schreibst, 
die Trenner, egal wie die heißen , beim Hochladen verloren gehen ?? Huh

BG
stoxxii


Angehängte Dateien
.txt   Blutdruck__Do-punkt__2014.txt (Größe: 3,83 KB / Downloads: 4)
Antworten Top
#10
Zitat:wenn, wie Du schreibst, die Trenner, egal wie die heißen, beim Hochladen verloren gehen??
(überflüssige Leerzeichen durch mich entfernt)

Davon hat DeltaX nix, aber rein gar nix geschrieben!
Der Editor versucht, automatisch Datenkonvertierungen durchzuführen.
Ich schrieb
Zitat:… wobei man als erstes im PQ-Editor den automatisch gesetzten Punkt "geänderter Typ" löschen muss …

Warum machst Du dies nicht einfach?
Dann siehst Du auch, dass beim Hochladen nichts verlorengeht.
   
   
   
   
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)
Antworten Top


Gehe zu:


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