Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 10 von 10

Thema: Formatierung in Excel

  1. #1
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo

    wenn ich aus einer Text-Datei Inhalte nach Excel kopiere habe ich folgendes Verhalten

    Code:
    2012-05-16 15:17:44.281   122 
    2012-05-16 15:18:22.033    98 
    2012-05-16 15:18:25.026   100 
    

    Wenn in der Text-Datei (letzte 2 Zeilen) die Hunderstel Sekundenangabe mit 0 beginnt, Formatiert Excel dass als Text anstatt als Uhrzeit.

    Möchte ich dann die Zeitdifferenz berechnen, bringt das natürlich einen Fehler .
    siehe Beispiel hier

    Code:
    16.05.2012 15:16 100  
    16.05.2012 15:17  80  00:42,0
    16.05.2012 15:17 100  00:03,0
    16.05.2012 15:17 122  00:03,0
    2012-05-16 15:18:22.033 98  #WERT!
    2012-05-16 15:18:25.026 100  #WERT!
    2012-05-16 15:18:28.027 122  #WERT!
    16.05.2012 15:19 98  #WERT!
    16.05.2012 15:19 100  00:03,0
    16.05.2012 15:19 122  00:03,0
    16.05.2012 15:19  98  00:40,0
    Weiss vielleicht jemand wie man das abstellen kann ?

    Danke schön
    bg
    bb
    Zitieren Zitieren Formatierung in Excel  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Hallo,
    nach meinem Kenntnisstand kann Excel nur Sekunden als kleinste Einheit erkennen. Das Time-Format selber wird allerdings als Dezimal-Tag dargestellt (also 12:00 uhr entspricht 0,5). Millisekunden kennt Excel nicht. Du könntest jetzt natürlich hergehen und dir mit einer selbstgeschriebenen Funktion (in VB-Script) den übergebenen Wert in ein Millisekunden-Format umrechnen (wie in der SPS) und diese Werte dann subtrahieren um die Differenz zu bilden und dann diese wieder in Excel darstellen. Etwas anderes fällt mir dazu aber jetzt nicht ein ...

    Gruß
    Larry

  3. #3
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard

    Hallo Larry,

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    Hallo,
    nach meinem Kenntnisstand kann Excel nur Sekunden als kleinste Einheit erkennen.
    ja tatsächlich, sieht so aus. Bei meinen Berechnungen ist die 1/100 Sekunden Zahl immer 0. Ist mir noch gar nicht aufgefallen

    Das heißt: ich habe 2 Probleme...

    Aber momentan würde mir eine Auflösung von 1 Sekunde eigentlich reichen.

    Bleibt das zweite Problem: warum macht Excel eine TEXT Formatierung für den Eintrag wenn die Hundertstel mit 0 beginnen (also z.B. 15:18:22.033 ). Dann funktioniert natürlich meine Formel für die Differenzberechnung nicht, da diese einfach so lautet : =A5 - A4 (zum Beispiel)

    Das ganze ist nicht so wichtig dass ich hier Aufwand betreiben möchte - ich hätte das halt manchmal benötigt. Programmieren möchte ich deswegen nicht ....

    Danke
    bg
    bb

  4. #4
    Registriert seit
    05.09.2011
    Beiträge
    176
    Danke
    43
    Erhielt 28 Danke für 20 Beiträge

    Standard

    Hallo bits'bytes,

    Meinst du so? Leider konnte ich keine Excel Datei hochladen, daher nur ein Screenshot.
    Zeitdifferenz.png

    Unter der Voraussetzung dass in einer Zelle folgendes "Format" steht : hh:mm:ss.xxx wobei xxx = Millisekunden sind. (Die Zelle hat bei mir Standardformat)

    Über eine Hilfstabelle könntest du dir nun aus der jeweiligen Zelle immer die Teilstrings ziehen (kannst die Spalten ja ausblenden) => Funktion Teil(Text,Erstes Zeichen, Anzahl Zeichen)
    Damit kannst du dir dann die Differenz bilden. Damit du immer einen positiven Wert bekommst solltest du die Funktion ABS benutzen die gibt dir dann immer den Betrag zurück!

    Zu guter letzt musst du dann natürlich die einzelnen Strings wieder zu einen Gesamtstring zusammenfassen, das geht u.a. so: A1&":"&B1&":"&C1&"."&D1&E1&F1
    Achja damit die Zahlen mit führenden Nullen ergänzt werden musst du bei der Differenzbildung noch diese Funktion anwenden TEXT(ABS(Zahl);"00") bedeutet wenn die Differenz z.B. 1 beträgt steht dann in der Zelle 01!

    mfg

    PS: Excel 2007

  5. #5
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard

    Hallo Nutellahase,


    danke für die Mühe - aber genau das wollte ich vermeiden - ist einfach umständlich. Dann müsste ich immer die Vorlage bei der Hand haben. Überigens hat sich bei dir schon ein Fehler eingeschlichen. 7 - 8 = 59 nicht 1 (bei den Millisekunden).

    Genau deswegen möchte ich dass Excel das macht. Excel macht es ja auch gut. Nur - und hier meine Ausgangsfrage - wenn bei den Hundertstel eine Null am Anfang steht glaubt Excel dass es Text ist, ansonsten alles paletti (wenn man von der Sekunden-Genauigkeit absieht).

    Wieso glaubt Excel dass das Text ist ? Keine Ahnung.

    Danke jedenfalls.
    bg
    bb

  6. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Hallo bb,
    Excel glaubt das, weil es das immer so macht wenn es das Format nicht identifizieren kann. Uhrzeit ist für Excel "hh:mm:ss" - alles andere kennt es nicht.
    Unabhängig von dem Vorschlag von Nutellahase würde ich aber (wie schon erwähnt) zu einer Function tendieren - etwas anderes wird wohl nicht gehen (außer die Berechnung kommt schon aus der SPS in die Tabelle.

    Gruß
    Larry

  7. #7
    Registriert seit
    05.09.2011
    Beiträge
    176
    Danke
    43
    Erhielt 28 Danke für 20 Beiträge

    Standard

    Hmm ok dann hätte ich noch was gefunden...
    Da ich nicht weiß ob du das bereits schon getan hast, hier mal ein weiterer Lösungsansatz (allerdings kommst du ohne Hilfstabellen bei reiner Excel Lösung nicht drumherum!):

    Ich nehme mal an die Millisekunden werden durch einen Punkt getrennt also so
    Code:
    hh:mm:ss.ms ms ms
    Wenn es durch ein Komma getrennt wäre, würde es funktionieren! Also in diesem Format:
    Code:
    hh:mm:ss,ms ms ms
    Hierzu musst du ein benutzerdefiniertes Format anlegen hh:mm:ss,000 => Excel kann scheinbar nur mit Komma rechnen:

    Zeitdifferenz.jpg

    In Spalte A ersetzt du den Punkt durch ein Komma.
    In Spalte B errechnest du dir die Differenz und wandelst sie ins Format hh:mm:ss,000
    In Spalte C ersetzt du das Komma durch den Punkt! (falls nötig)

    Wieso kann man eigentlich keine Excel Dateien hochladen oder bin ich nur zu blöd dazu??

  8. #8
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard

    Hallo,

    danke für den Versuch, der Screenshot sieht gut aus. Bei mir stellt sich leider Excel total blöd an.

    Sobald ich die Zwischenablage einfüge, wird sofort alles was nach hh:mm ist sofort verschmissen. Das anfängliche Problem besteht, d.h beim einfügen habe ich dann Teile als Datum/Uhrzeit, andere wieder als Text.

    Also, ich habe keine Lust mehr - kann man vergessen.

    bg
    bb

    PS: Excel ist offensichtlich gesperrt, eh kein Wunder bei dem Risiko-Level den diese Dateien für die Gesundheit der Nutzer darstellen.

  9. #9
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    ... darf ich mal fragen, von wo diese Zahlen kommen und warum du die gewünschte Differenz nicht dort ermittelst ?

    Gruß
    Larry

  10. #10
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Larry,

    da gibts ein Programm "PLTrend", das macht das eben momentan nicht. Wäre aber eine Überlegung Wert.....

    bg
    bb

Ähnliche Themen

  1. S7 To Excel
    Von salih im Forum Werbung und Produktneuheiten
    Antworten: 0
    Letzter Beitrag: 26.07.2009, 11:41
  2. Excel-Makros
    Von jan820813 im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 30.06.2009, 14:57
  3. XML zu Excel
    Von Keeper im Forum HMI
    Antworten: 0
    Letzter Beitrag: 10.03.2009, 15:40
  4. Antworten: 4
    Letzter Beitrag: 22.02.2008, 23:50
  5. Excel -> DB
    Von mst im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 16.10.2007, 15:57

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •