Supportnet / Forum / Tabellenkalkulation
dbaseIII-Format
Frage
In EXCEL 97 soll der Befehl
Datei-Speichern Unter-Dateityp DBF3(dBase III)
eine Datei im dBase III Format speichern.
Aber :
Die Datei läßt sich anschließend nicht in dBase III lesen. Bringt folgenden
Fehler : "Keine dBase Datenbank."
Wer weiß Bescheid ?
Antwort 1 von ThomasG
Hallo Hanspeter,
ich habe mal in Excel 97 2 Spalten mit einer Überschrift ( Feldname ) und mehrere Datensätze eingeben und als DBF gespeichert. Hat prima funktioniert und läßt sich unter dBASe auch aufrufen. Wie speicherst Du denn und hast du Feldnamen auf 10 Zeichen begrenst ohne Leereichen!!
Thomas
ich habe mal in Excel 97 2 Spalten mit einer Überschrift ( Feldname ) und mehrere Datensätze eingeben und als DBF gespeichert. Hat prima funktioniert und läßt sich unter dBASe auch aufrufen. Wie speicherst Du denn und hast du Feldnamen auf 10 Zeichen begrenst ohne Leereichen!!
Thomas
Antwort 2 von HPC
Hallo Thomas,
selbst so ein kleines beispiel mit 2 spalten, sagen wir mal
FELDA..... FELDB
....1..............10
....2..............20
funktioniert nicht. Beim " Speichern Unter" gebe ich als Dateityp dbf3 an. In EXCEL kann ich die Datei wieder als dbf-Datei lesen, aber eben in dbase nicht.
Hanspeter
selbst so ein kleines beispiel mit 2 spalten, sagen wir mal
FELDA..... FELDB
....1..............10
....2..............20
funktioniert nicht. Beim " Speichern Unter" gebe ich als Dateityp dbf3 an. In EXCEL kann ich die Datei wieder als dbf-Datei lesen, aber eben in dbase nicht.
Hanspeter
Antwort 3 von sicci
Hallo Hanspeter,
könnte mir vorstellen, daß das was mit den ODBC (Open DataBase Connectivity) Progs zu tun hat, die vielleicht nicht richtig konfiguriert oder installiert sind.
Hier ein Auszug (aus folgendem Link:
http://www.microsoft.com/GERMANY/ms/msdnbiblio/artikel/migratingdaotoado.htm)
<<<
Öffnen einer Datenbank
Im Allgemeinen besteht beim Schreiben einer Anwendung für den Datenzugriff der erste Schritt darin, die Datenquelle zu öffnen. Wenn die Microsoft Jet-Datenbankengine verwendet wird, können Sie Microsoft Jet-Datenbanken oder sonstige externe Datenquellen wie Microsoft Excel, Paradox und dBASE mit den ISAM-Komponenten von Microsoft Jet und ODBC-Datenquellen öffnen.
Microsoft Jet-Datenbanken
Mit Microsoft Jet Provider können Microsoft Jet 4.0-Datenbanken sowie mit älteren Versionen der Microsoft Jet-Datenbankengine erstellte Datenbanken geöffnet werden. In diesen Beispielen werden nur Microsoft Jet 4.0-Datenbanken verwendet.
Der folgende Code zeigt, wie eine Microsoft Jet-Datenbank mit gemeinsamen, aktualisierbarem Zugriff geöffnet wird. Anschließend wird die Datenquelle zu Demonstrationszwecken durch den Code sofort wieder geschlossen.
DAO
>>>
Da mußt Du vielleicht bißchen Infos sammeln + basteln.
Gruß
sicci
könnte mir vorstellen, daß das was mit den ODBC (Open DataBase Connectivity) Progs zu tun hat, die vielleicht nicht richtig konfiguriert oder installiert sind.
Hier ein Auszug (aus folgendem Link:
http://www.microsoft.com/GERMANY/ms/msdnbiblio/artikel/migratingdaotoado.htm)
<<<
Öffnen einer Datenbank
Im Allgemeinen besteht beim Schreiben einer Anwendung für den Datenzugriff der erste Schritt darin, die Datenquelle zu öffnen. Wenn die Microsoft Jet-Datenbankengine verwendet wird, können Sie Microsoft Jet-Datenbanken oder sonstige externe Datenquellen wie Microsoft Excel, Paradox und dBASE mit den ISAM-Komponenten von Microsoft Jet und ODBC-Datenquellen öffnen.
Microsoft Jet-Datenbanken
Mit Microsoft Jet Provider können Microsoft Jet 4.0-Datenbanken sowie mit älteren Versionen der Microsoft Jet-Datenbankengine erstellte Datenbanken geöffnet werden. In diesen Beispielen werden nur Microsoft Jet 4.0-Datenbanken verwendet.
Der folgende Code zeigt, wie eine Microsoft Jet-Datenbank mit gemeinsamen, aktualisierbarem Zugriff geöffnet wird. Anschließend wird die Datenquelle zu Demonstrationszwecken durch den Code sofort wieder geschlossen.
DAO
>>>
Da mußt Du vielleicht bißchen Infos sammeln + basteln.
Gruß
sicci
Antwort 4 von hendrikw
Das Problem besteht ab einer bestimmten DAO-Version (Microsoft Data Access Objects). Die schreibt nämlich in den dBase-Header am Anfang das Datum rein. Und zwar das Jahr als Differenz zu 1900. dBaseIII kann nun aber mit einer Differenz von 101 nichts mehr anfangen und meldet "keine dBase-Datenbank".
Ich hatte dazu Anfang des Jahres einen mailabtausch mit dem MS-Support. Lösung des Problems: Header patchen, sprich die 101 am Anfang durch irgenwas ersetzen, mit dem dBaseIII was anfangen kann, z,B. 1; das entspricht dann zwar 1901, aber daran stört sich dBase nicht :)
mfg
Hendrik
Ich hatte dazu Anfang des Jahres einen mailabtausch mit dem MS-Support. Lösung des Problems: Header patchen, sprich die 101 am Anfang durch irgenwas ersetzen, mit dem dBaseIII was anfangen kann, z,B. 1; das entspricht dann zwar 1901, aber daran stört sich dBase nicht :)
mfg
Hendrik
Antwort 5 von HPC
Hallo thomas, sicci, hendrik,
danke für eure hilfe. der tip von hendrik hat ins schwarze getroffen. im 2. byte des headers steht tatsächlich hex65(=101).
hanspeter
danke für eure hilfe. der tip von hendrik hat ins schwarze getroffen. im 2. byte des headers steht tatsächlich hex65(=101).
hanspeter

