Forum: PC-Programmierung S7-1200 Logdaten CSV Datei. Wie am besten öffnen?


von Werkler (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

Logge mit einer S7-1200 Daten auf eine SD Karte.
Die Loggdatei sieht wie im Anhang aus.

Das Problem was ich habe:
Ich möchte meine Daten im Excel,Open office und Co. so sehen: +26.60
Leider sehen die Daten aber so aus: 2.660000E+01

Wie kann ich das richtig formatieren, oder was ist beim Import 
entscheident?

von Karl H. (kbuchegg)


Lesenswert?

ZUnächst mal ist es wichtig, dass du Gschnegsel (oder was auch immer du 
nimmst) klar machst, dass das keine Standard-CSV Datei ist, sondern eine 
die einen ',' als Feldtrenner benutzt und keinen ';'. Ich hab in meinem 
Gschnegsel die entsprechende Einstellung beim Öffnen von CSV Dateien 
nicht gefunden (ich hasse diese Ribbon-GUI) und hab im Notepad mal kurz 
alle ',' gegen ';' ersetzen lassen.

Hast du das ganze dann sauber importiert, dann stellst du für die 
Spalten die Zellenformatierung auf 'Zahl' und alles ist genau so wie du 
das haben willst.


* du könntest natürlich auch versuchen, deine S7 dazu zuüberreden, 
anstatt ',' gleich ';' als Feldtrenner zu verwenden, dann würdest du dir 
einen Schritt sparen

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

wenn die Dateien .csv heißen, dann werden sie wohl auch standardmäßig 
als "comma seperated" angenommen.

--> Datei umbenennen als .dat oder .txt oder irgendwas anderes, dann 
wird dieser Automatismus unterbunden

von Karl H. (kbuchegg)


Lesenswert?

> wenn die Dateien .csv heißen, dann werden sie wohl auch
> standardmäßig als "comma seperated" angenommen.

http://de.wikipedia.org/wiki/CSV_(Dateiformat)#Besonderheiten_beim_Import


In aller Kürze:
Nix is fix, und jeder macht das so wie er will. :-)

von Werkler (Gast)


Lesenswert?

Importieren mit , als Trenner geht.
Aber die Umstellung der Zahlen macht mir zu schaffen.
Funktioniert irgendwie nicht.

von Karl H. (kbuchegg)


Lesenswert?

Werkler schrieb:
> Importieren mit , als Trenner geht.
> Aber die Umstellung der Zahlen macht mir zu schaffen.
> Funktioniert irgendwie nicht.

Im Excel Import Dialog gibt es auch irgendwo eine Einstellung, mit der 
du festlegen kannst, dass bei dir ein '.' der Dezimaltrenner ist.

Sind die Zahlen korrekt importiert worden:
Spalte markieren, rechte Maustaste, Zellen Formatieren und das Format 
auf Zahl einstellen.

von Karl H. (kbuchegg)


Lesenswert?

Beim Import nicht vergessen, das 1000-er Trennzeichen auf etwas anderes 
als ',' zu setzen!

von Karl H. (kbuchegg)


Angehängte Dateien:

Lesenswert?

So sind die Schritte.
(1000-er Zeichen nicht vergessen einzustellen!)

von deathfun (Gast)


Lesenswert?

Hallo,

für eine Automatisierte Lösung VBA:

1. Dezimaltrennzeichen Temporär ändern:
1
.UseSystemSeparators = False
2
.DecimalSeparator = "."
3
.ThousandsSeparator = ","


2. Datei einlesen
1
.GetOpenFilename("Quelle (*.csv), *.csv")
Hier weiß ich gerade nicht den ganuen Syntax, müsste aber:
1
Origin:= xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= xlDoubleQuote, Comma:=True, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True


3. Zellen als Standart definieren
(Excel wird hier Wissenschaftlich Werte vermuten)
1
.NumberFormat = "General"



Damit solltest du eine Datei öffnen und in Excel einlesen können, wobei 
die Real Werte aus der SPS als Dezimale Werte in Excel angezeit werden.
1. Muss gemacht werden da Excel den "," als Dezimaltrenne hat und 
Siemens das "."
2. Öffnet eine CSV Datei, wählt als Seperator das "," und schreibt jeden 
Wert in eine eigene Zelle
3. Ändert die Anzeige von einem Wissenschaftlichen Wert (1,33E+1) auf 
einen normalen Dezimalen Wert (13,3)



Gruß
Deathfun
(von unterwegs)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.