VBA Textdatei per Makro importieren und unverändert importieren (führende 0 behalten)

Moti2008

Neues Mitglied
Hallo zusammen

Ich importiere per Makro zwei Dateien. Diese werden auf Inhalt verglichen und dann zu einer Liste zusammen geführt. Nun stellte ich fest, dass es Felder gibt, die falsch abgespeichert werden.

Feld 1 (kann Buchstaben und Zahlen oder nur eines von beiden enthalten - Länge unterschiedlich):
Die Textdateien sind anfangs noch richtig. Schaut man diese mit einem Texteditor an, sind alle Felder noch unverändert. Nach dem das Makro durchlief und die Dateien neu speicherte sind leider Felder im speziellen mit führenden 0 (vorangegangenen Null) durch Excel verschluckt worden.

Beispiel 01234567890123 natürlich auch 0000000001234567890123.... ganz schlimm endet so etwas: 28495E35 (daraus wird 2.8495E+39)

Ich habe nun schon das entsprechende Feld als Text definiert. Irgendwie scheint dies manuell zu funktionieren, aber innerhalb des Markro's will dies nicht funktionieren. Fakt: Die Spalte ist wie gewünscht als Text formatiert aber die "0" sind dennoch verschwunden - unabhängig von der Anzahl.

Mache ich dies zum falschen Zeitpunkt, oder gibt es hier speziellere Befehle als nur mitels NumberFormat zu arbeiten? Was nicht geht ist, dass Feld nach Abschluss des Makros auf Text zu stellen, denn da sind die 0er oder ähnlich schon drin. Ich habe schon mal gelesen, dass man die entsprechende Spalte mit einem Hochkomma füllen könnte bevor die Daten des Textfiles kommen. Aber hierzu fehlt mir leider der entsprechende VBA-Schnipsel.

Feld 2 (hat generell nur Zahlen):
Dies ist ein EAN Code der Produkte. Diese Zahlen sollten in der Regel 13 stellig sein. Nun kommt es vor, dass 11 Zahlen gemeldet bekomme. DIese sollten dann vorne mit 0 gefüllt werden. Verwendet habe ich hier .NumberFormat = "0". Gibt es hier einen sicheren Begriff, der hier korrekt ausführt?

Viele Grüsse
Moti
 

Moti2008

Neues Mitglied
Hallo Nebuk

Die Seite von herber.de habe ich schon kreuz und quer gelesen. Leider fand ich nichts dass passt. Auch dieser Thread löst eher das Datumsproblem und setzt eine 0 wenn ein Datum kommt, dass mehr als eine Stelle hat (Monat 9 / Monat 10). Ich suche eigentlich eher eine Möglichkeit, dass entweder die Zeile aus dem Textfile ausgelesen und auch 1:1 in Excel importiert wird oder aber eine Möglichkeit dies über ein Hochkomma zu lösen.

Stelle mir dies in etwa so vor, dass mein Makro vor dem Befehl, dass die Datei eingelesen werden soll in die entsprechende Spalte ein ' (Hochkomma) setzt. Dann würde, wie ich im Netz gelesen habe, alles 1:1 importiert werden.

Leider ist mein VBA nicht nur eingerostet, sondern dies übersteigt definitiv meine Kenntnisse.

Ich denke das zweite Problem ist einfacher zu lösen, da einfach nur der Code für NumberFormat von "0" auf eines gewechselt werden muss, welches die Anzahl Stellen definiert.

Gruss
Moti
 

Moti2008

Neues Mitglied
Hallo FreeRider

scheinbar kann man in einer PN keine Anlage versenden, oder aber ich habe Tomaten auf den Augen. Kann ich dies als E-Mail senden?

Gruss
Moti2008
 

FreeRider

Stammgast
Hallo Moti2008

Du kannst es mir gerne als E-Mail senden (siehe PN) oder die Datei über "Anhänge verwalten" (findest du weiter unten unter "Zusätzliche Einstellungen") hier ins Forum stellen.
 
Oben