Seite 1 von 2

Probs mit CSV und Datum

Verfasst: 18.01.2007, 21:13
von KnutFR
Hi all,

wenn ich die CSV-Datei mit Excel öffne werden die Datumsfelder falsch interpretiert. Und beim Zurücklesen genauso falsch eingelesen. Gibs es da einen Trick?
Oder ist es nicht sinnvoll die Daten mit Excel zu bearbeiten? Dies würde mir viel Arbeit erleichtem z.B. das Eingeben von sich wiederholenden Quellen, oder um die Position eines Kindes zu verändern.

Besten Dank schon mal

Knut

Verfasst: 18.01.2007, 21:27
von Marcus
Wenn die Felder in Excel falsch eingelesen werden und dann unkorrigiert wieder in Ahnenblatt gelesen werden, sind sie auch dort falsch.
Zur Umgehung müssen sie in Excel schon mal richtig eingelesen oder aber später korrekt formatiert werden.
Wie sind denn deine Daten in Ahnenblatt hinterlegt? Ganz normal TT.MM.JJJJ? Und wie stehen sie nachher in Excel in der Zelle? Schon einmal mit "Zellen formatieren" versucht sie in das korrekte Format zu konvertieren?
Ich selbst nutze alle Exportformate in Ahnenblatt nur um in anderen Programmen zu spielen, testen oder auch um einmal etwas zu drucken. Auf die Idee diese Daten dann wieder in Ahnenblatt einzulesen käme ich nie ;) Genau weiß man nie, was bei einem Import alles schiefgehen kann und da ich mit den Eingabemöglichkeiten sehr zufrieden bin, entsteht auch keine Notwendigkeit.

Zum angesprochenen Punkt der wiederholenden Quellen, wäre eine Vereinfachung in der Tat nicht schlecht! Bisher gebe ich die immer per Copy&Paste für ein paar neue Personen direkt nacheinander ein. Also erst einmal die harten Fakten (Namen, Daten etc.) und danach (wenn ich so 10 bis 20 Leute eingegeben habe), dann schnell bei allen die Quellen nachtragen.

Welche Änderung bei den Position der Kinder ist Dir denn wichtig? Chronologisch kann das ja Ahnenblatt, welche Reihung bevorzugst Du denn?
Marcus

Verfasst: 18.01.2007, 22:44
von KnutFR
Hallo Markus,

Wahrscheinlich habe ich mich etwas falsch ausgedrückt. Excel interpretiert ein Datum TT.MM.JJJJ z.B. 10.02.1888 genauso wie 10.021988 nämlich als 10.02.1988 und gibt dann das Datum im Format TT.MM.JJ zurück. Auch beim Reinport gibt Excel das Dartum im TT.MM.JJ Format an die AHN-Datei zurück

>um angesprochenen Punkt der wiederholenden Quellen, wäre eine
>Vereinfachung in der Tat nicht schlecht! Bisher gebe ich die immer per
>Copy&Paste für ein paar neue Personen direkt nacheinander ein. Also erst
>einmal die harten Fakten (Namen, Daten etc.) und danach (wenn ich so
>10 bis 20 Leute eingegeben habe), dann schnell bei allen die Quellen
>nachtragen.
>


Dies wäre eben mit Excel viel einfacher.

>Welche Änderung bei den Position der Kinder ist Dir denn wichtig?
>Chronologisch kann das ja Ahnenblatt, welche Reihung
>bevorzugst Du denn?
>

Nach Geburtsfolge auch wenn nicht alle Geburtsdaten bekannt sind oder erst später bekannt werden, oder versehendlich falsch eingeben wurden.

Es gibt sicherlich noch andere Gründe wie Änderungen oder Ergänzungen mit Excel einfacher wären.
Dafür gibt es doch die Ex-, Importfuntionen?


MfG

Knut

Verfasst: 18.01.2007, 23:47
von Marcus
KnutFR hat geschrieben:
Wahrscheinlich habe ich mich etwas falsch ausgedrückt. Excel interpretiert ein Datum TT.MM.JJJJ z.B. 10.02.1888 genauso wie 10.021988 nämlich als 10.02.1988 und gibt dann das Datum im Format TT.MM.JJ zurück. Auch beim Reinport gibt Excel das Dartum im TT.MM.JJ Format an die AHN-Datei zurück
Entweder gibt es den Fehler bei mir nicht oder ich habe es immer noch nicht verstanden :roll:
Bsp.: In Deiner ahn-Datei steht: 10.02.1888
Export in eine csv-Datei
Import der csv-Datei in Excel - dort steht: 10.02.1888
Speichern der csv-Datei
Import der csv-Datei in Ahnenblatt - dort steht plötzlich 10.02.88

Ist das so korrekt?


Nach Geburtsfolge auch wenn nicht alle Geburtsdaten bekannt sind oder erst später bekannt werden, oder versehendlich falsch eingeben wurden.
Vielleicht weißt Du ja manchmal etwas über die Kinder ohne das genaue Datum "greifen" zu können. Mit geschickten Abschätzungen, wer vor bzw. nach wem geboren ist, kann man auch Ahnenblatt die Reihung weiter automatisch vornehmen lassen.
Schau doch mal hier im Portal in die Knowledge Base. Dort im Artikel Datumsformate gibt es zahlreiche Anregungen wie man noch ein Datum eingeben kann, das einem nicht genau bekannt ist.
Wenn Du das ganze über Excel löst, sind die Famielen nach dem nächsten Aufruf von "sortieren" doch auch wieder unsortiert?


Es gibt sicherlich noch andere Gründe wie Änderungen oder Ergänzungen mit Excel einfacher wären.
Dafür gibt es doch die Ex-, Importfuntionen?
Für einen einmaligen Import von Daten (die man aus einer anderen Quelle bekommt) sind sie sogar sehr gut. Sie suchen in der Qualität der übernommenen Daten meiner Meinung nach auch Ihresgleichen.
Trotzdem halte ich wenig davon Daten dauernd zu exportiren und außerhalb des eigentlichen Programms weiterzupflegen und dann wieder zu reimportieren. Das ist aber auch ganz unabhängig von Ahnenblatt und der Ahnenforschung bei mir so ;)
Bildpfade werden bestimmt nicht alle übernommen (oder doch?), auch solche Gimmicks wie die Startperson und andere Kleinigkeiten gehen bei einem Import doch immer wieder verloren.
Da ich eigentlich nie importiere, bin ich aber auch der falsche Ansprechpartner ;)
Marcus

Verfasst: 19.01.2007, 08:41
von Roger Paini
Hallo zusammen

Marcus hat recht wenn er vor einem CSV Ex- und Import warnt. In der tat gehen Daten verloren. Es wird beispielsweise nur ein Bilderpfad pro Person exportiert- der Rest geht somit verloren.

Exporte sind vor allem gedacht um die Daten andersweitig weiterverwenden zu können. Ich denke da an eine Aufbereitung der Daten in einer Access-Datenbank oder Excel.

Gruss
Roger

Verfasst: 20.01.2007, 15:17
von KnutFR
Marcus hat geschrieben:
Entweder gibt es den Fehler bei mir nicht oder ich habe es immer noch nicht verstanden :roll:
Bsp.: In Deiner ahn-Datei steht: 10.02.1888
Export in eine csv-Datei
Import der csv-Datei in Excel - dort steht: 10.02.1888
Speichern der csv-Datei
Import der csv-Datei in Ahnenblatt - dort steht plötzlich 10.02.88

Ist das so korrekt?

Marcus
Ja so ist es. Es ist ein eigentlich ein Excel-Datum-Problem. Und läßt sich wenn ich es richtig verstehe durch einen Präfix beim Import lösen. Ich hoffte, daß jemand hier oder sogar Dirk dieses Problem kennt und sogar lösen könnte :)
Marcus hat geschrieben:
KnutFR hat geschrieben:

Es gibt sicherlich noch andere Gründe wie Änderungen oder Ergänzungen mit Excel einfacher wären.
Dafür gibt es doch die Ex-, Importfuntionen?
Für einen einmaligen Import von Daten (die man aus einer anderen Quelle bekommt) sind sie sogar sehr gut. Sie suchen in der Qualität der übernommenen Daten meiner Meinung nach auch Ihresgleichen.
Trotzdem halte ich wenig davon Daten dauernd zu exportiren und außerhalb des eigentlichen Programms weiterzupflegen und dann wieder zu reimportieren. Das ist aber auch ganz unabhängig von Ahnenblatt und der Ahnenforschung bei mir so ;)
Bildpfade werden bestimmt nicht alle übernommen (oder doch?), auch solche Gimmicks wie die Startperson und andere Kleinigkeiten gehen bei einem Import doch immer wieder verloren.
Da ich eigentlich nie importiere, bin ich aber auch der falsche Ansprechpartner ;)
Marcus
Ich bin es von Grafik-Programmen und Web-Editoren gewohnt immer mit verschiedenen Programmen zuarbeiten. Da das eine und mal das andere Programm das eine bzw. das andere Problem besser löst. Und wenn ein Im- Export-Funktion funktioniert steht ja einem hin und her doch nichts entgegen.

Nun habe ich noch ne Frage. Liest Dirk eigentlich auch in diesem Forum? Und Programmiert er auch das Programm selbst bzw alleine?

Ciao Knut

Verfasst: 20.01.2007, 15:45
von Hugo
Guten Tag Knut
KnutFR hat geschrieben:Nun habe ich noch ne Frage. Liest Dirk eigentlich auch in diesem Forum? Und Programmiert er auch das Programm selbst bzw alleine?
Dirk ließt hier mit

Dirk Böttcher ist alleiniger Programmierer von Ahnenblatt

Gruß Hugo

Verfasst: 20.01.2007, 16:34
von Marcus
KnutFR hat geschrieben:
Marcus hat geschrieben:
Entweder gibt es den Fehler bei mir nicht oder ich habe es immer noch nicht verstanden :roll:
Bsp.: In Deiner ahn-Datei steht: 10.02.1888
Export in eine csv-Datei
Import der csv-Datei in Excel - dort steht: 10.02.1888
Speichern der csv-Datei
Import der csv-Datei in Ahnenblatt - dort steht plötzlich 10.02.88

Ist das so korrekt?

Marcus
Ja so ist es. Es ist ein eigentlich ein Excel-Datum-Problem. Und läßt sich wenn ich es richtig verstehe durch einen Präfix beim Import lösen. Ich hoffte, daß jemand hier oder sogar Dirk dieses Problem kennt und sogar lösen könnte :)
Dann würde ja Excel ein Datum, dass es vierstellig (1988) anzeigt, nur zweistellig ( 88 ) abspeichern :shock: Das mag ich nicht so recht glauben.
Was steht denn in der csv-Datei nach dem speichern in Excel, wenn Du die Datei mit einem texteditor öffnest?

KnutFR hat geschrieben:
Ich bin es von Grafik-Programmen und Web-Editoren gewohnt immer mit verschiedenen Programmen zuarbeiten. Da das eine und mal das andere Programm das eine bzw. das andere Problem besser löst. Und wenn ein Im- Export-Funktion funktioniert steht ja einem hin und her doch nichts entgegen.
Der "kleine" aber eben wesentliche Unterschied ist, dass Du dort mit den gleichen Dateien (jpg und html wohl hauptsächlich) "spielst" und diese von allen Programmen verarbeitet und interpretiert werden können.
Bei der Ahnendatei machst Du ja genau das nicht!
ahn -> ged oder csv -> ahn
Da sind eben mindestens zwei Konvertierungen dabei und eine davon in ein minderwertiges Format (kann eben weniger als ahn) ;)
Vergleichbar wäre das mit einer tollen Grafik, die Du in Photoshop oder GIMP erstellt hast (mehrere Ebenen, Alpha-Kanal-Nutzung etc.), dies dann in ein jpg wandelst und dann wieder im GIMP als xng (o-ä.) importierst. Dann hast Du zwar immer noch ein Bild für Deine Homepage, die Ebenen und Kanäle sind zusammen mit vielen anderen Meta-Daten allerdings verloren :(
Marcus

Verfasst: 20.01.2007, 17:33
von Hugo
Guten Tag
Das Problem liegt an Excel
In den Optionen von Excel läßt sich die 4 stellige Jahreszahl auf 2 stellig umschalten
Ferner passieren die tollsten Sachen, wenn ich in Excel mit dem Datumsformat spiele

Beispiel:
In meiner Testfamilie sind nur Jahreszahlen angegeben (ohne Tag und Monat)
Es sind Jahreszahlen zwischen 1882 und 1997
Wenn ich alles so lasse, funktioniert das Datum auch beim Re-Import in Ahnenblatt
(Dafür fehlen andere Dinge Bilder.... )
Änder ich aber das Zellenformat beim Datum in Excel von Standart auf Datum TT.MM.JJJJ stehen dort plötzlich nur noch Datumsangaben mit Tag, Monat und dem Jahr 1905 oder 1906
Bei anderen Datumsformaten in den Excel-Einstellungen wird es noch schlimmer

Jetzt ist logischer Weise auch der Re-Import in Ahnenblatt beim Datum falsch

Das liegt daran, das Excel die Anzahl der Tage zählt ab dem Startdatum, das in den Optionen festgelegt ist

Gruß Hugo

Verfasst: 20.01.2007, 18:46
von Marcus
Hugo hat geschrieben:
Das Problem liegt an Excel
In den Optionen von Excel läßt sich die 4 stellige Jahreszahl auf 2 stellig umschalten
In Excel kann ich nur die Darstellung für jede Zelle beeinflussen - global geht das nicht. Insbesondere sollte also ein Datumswert der vierstellig angezeigt wird, auch so gespeichert werden.


Ferner passieren die tollsten Sachen, wenn ich in Excel mit dem Datumsformat spiele

Beispiel:
In meiner Testfamilie sind nur Jahreszahlen angegeben (ohne Tag und Monat)
Es sind Jahreszahlen zwischen 1882 und 1997
Wenn ich alles so lasse, funktioniert das Datum auch beim Re-Import in Ahnenblatt
(Dafür fehlen andere Dinge Bilder.... )
Änder ich aber das Zellenformat beim Datum in Excel von Standart auf Datum TT.MM.JJJJ stehen dort plötzlich nur noch Datumsangaben mit Tag, Monat und dem Jahr 1905 oder 1906
Das liegt daran, dass z.B. 1882 von Excel vorher nicht als Datum erkannt wurde! Du schreibst ja selbst, dass Du von Standard auf auf das Format TT.MM.JJJJ umstellst. Da wird also ein Text (bzw. eine Zahl ab dem gewählten Startdatum, id.R. 1.1.1900) in ein Datum umgewandelt. Das geht schief.
Die Zelle muss schon vorher ein Datumswert sein oder eben ein Text-Wert bleiben. 1882 ist ja auch kein Datum, sondern eine Zeitspanne!

Mir bleibt es ein Rätsel und ich bin nach wie vor am Eintrag in der csv-Datei nach Speichern in Excel interessiert!
Marcus

PS Den Datumswert generell verstellen kann man in der Systemsteuerung (XP) -> Regions- und Sprachoptionen ->Anpassen... -> Datum
Hier dann sowohl für das Kurz- als auch das Langdatum jeweils eine Anzeige mit vierstelliger Jahreszahl wählen.
Bei vorhergehenden Windows-Versionen fand man dies wohl in den "Ländereinstellungen" der Systemsteuerung.

Verfasst: 20.01.2007, 20:13
von KnutFR
Erstmal Danke für Eure Postings.
Wahrscheinlich gibt es keine Lösung. Leider

Marcus hat geschrieben:
Dann würde ja Excel ein Datum, dass es vierstellig (1988) anzeigt, nur zweistellig ( 88 ) abspeichern :shock: Das mag ich nicht so recht glauben.
Was steht denn in der csv-Datei nach dem speichern in Excel, wenn Du die Datei mit einem texteditor öffnest?

Marcus
Im Texteditor sieht die CSV-datei das Datum so:
19.04.1960 =>
34;M;;19.04.60;Lahr;;;;;;;;;;;

ein ältere Datum wird jedoch so angenommen
01.03.1751 =>
;;;01.03.1751;Allm

Vielleicht finde ich ja noch einen Trick raus. :?:

Ciao Knut

Verfasst: 20.01.2007, 20:37
von Marcus
Kurz: Ich bin ratlos :(
Vielleicht sollte sich Roger das noch mal anschauen - evtl. kann er das nachbasteln :?
Marcus

Verfasst: 21.01.2007, 11:42
von Roger Paini
Hallo zusammen

Excel hat nachweislich Probleme mit der Interpretationen von Werten. Ich kenne es vor allem bei numerischen Werten. Sobald eine Zelle leer ist, werden die Zellen danach als Text interpretiert - selbst wenn es eindeutig Zahlen sind. Mit Datum-Werten habe ich wenig Erfahrung aber es könnte gut sein, dass Excel hier auch etwas schwer von Begriff ist wenn gemischte Daten vorhanden sind (z.B. einmal 05.05.1919 dann aber ??.05.1919 oder 3.3.05).
KnutFR hat geschrieben: Im Texteditor sieht die CSV-datei das Datum so:
19.04.1960 =>
34;M;;19.04.60;Lahr;;;;;;;;;;;
Excel nimmt sich das eingestellte Format beim speichern sehr zu Herzen. Wenn man also für Datumsangaben nur zwei Stellen einstellt, werden auch tatsächlich nur diese 2 Stellen gespeichert! Gefährlich...
Marcus hat geschrieben: PS Den Datumswert generell verstellen kann man in der Systemsteuerung (XP) -> Regions- und Sprachoptionen ->Anpassen... -> Datum
Hier dann sowohl für das Kurz- als auch das Langdatum jeweils eine Anzeige mit vierstelliger Jahreszahl wählen.
Bei vorhergehenden Windows-Versionen fand man dies wohl in den "Ländereinstellungen" der Systemsteuerung.
Bei mir wird die CSV Datei mit 4 Jahresstellen geöffnet. Nach umstellen der von Marcus vorgeschlagenen Einstellung konnte ich das Problem nachvollziehen. Excel bezieht sich also tatsächlich das in Windows eingestellte Format und stellt das Format für das Datum automatisch entsprechend ein. Also unbedingt auf 4 Stellen ändern!

Ausserdem! Alles was früher als 1900 ist wird als Text behandelt da der kleinste Datumswert (numerische Wert 1) = 01.01.1900 ist. Toll...

Fazit: Wenn man Excel zur Datenmanipulation verwenden möchte muss man extrem gut aufpassen was mit den den Daten geschieht - sowohl beim öffnen als auch beim speichern. Aber wie bereits gesagt, das CSV verleitet zwar dazu Daten extern zu bearbeiten aber man muss mit Datenverlust rechnen.

Gruss
Roger

PS: vielleicht gibt es ja Freeware Tools welche rudimentärer als Excel sind jedoch nicht so ein Problem mit Formaten veranstalten... oder wie sieht es mit OpenOffice aus? Habe da leider keine Erfahrung.

Verfasst: 21.01.2007, 13:52
von Marcus
Danke Roger!
Das umstellen des Datums in der Systemsteuerung hatte ich nicht probiert - dachte das hätte Knut schon versucht. Hoffentlich liegt es bei ihm dann auch daran - sonst haben wir ein kniffliges Problem.
OpenOffice ist in der Hinsicht auch nahezu eine 1:1 Kopie von Excel :( Beim Einlesen der Datei wird entschieden, was für ein Wert die gerade eingelesene Zelle ist. Sprich 1604 ist eine Zahl, 11.1604 wohl ein Text (hatte keinen in meiner Datei, aber so wie der Rest übernommen wird passt das) und 11.11.1604 dann ein Datum. Alles andere wird als Text interpretiert.
Wandelt man nun die Zahlen (1604) in ein Datum um, dann hat man irgendwas um 1904 geaschaffen :(
Doofes Office ;)
Marcus