Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten als txt - Probs mit Zellformaten

Daten als txt - Probs mit Zellformaten
20.08.2008 06:06:00
Gerhard
Moin
Speichere einen Ausschnitt meiner Tabelle wie folgt als txt Datei ab:

Sub TXT_DATEI()
Dim Bereich As Range
Dim SpeicherPfad As String
Application.ScreenUpdating = False
SpeicherPfad = _
IIf(Right$(ThisWorkbook.Path, 1) = "\", ThisWorkbook.Path, ThisWorkbook.Path & "\") & _
"Meine.TXT"
Set Bereich = Tabelle1.UsedRange.SpecialCells(xlCellTypeVisible)
With Workbooks.Add
Application.CutCopyMode = False
Bereich.Copy
.ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
SpeicherPfad, _
FileFormat:=xlUnicodeText, CreateBackup:=False
.Close
Application.DisplayAlerts = True
End With
Application.ScreenUpdating = True
End Sub


Wenn ich nun diese Dateien in eine neue Tabelle kopieren will sind meine ganzen Zellformate verschwunden.
23,5 wird zu 23.5 und somit als Datum angezeigt.
0005 wird als 5 angezeigt (benutzerdefiniertes Format "0000"
Das einzige was ich mir denken kann ist, das es an diesem Satz liegt:
FileFormat:=xlUnicodeText, CreateBackup:=False
Was muss da bei FileFormat rein, das die Zellformate mitübernommen werden?
thx Gerhard

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten als txt - Probs mit Zellformaten
20.08.2008 10:17:00
Daniel
Hi
grundsätzlich:
Text-Files kennen keine Formate !!!!!!
Zahlen werden immer als Wert in in die Textdatei übertragen.
wenn du Formatierte Zahlen in ein Text-File übertragen willst, musst du diese erst in einen Text umwandeln.
dazu könntest du diese Schleife verwenden (muss nach dem Kopieren in den Code eingefügt werden)

Dim Zelle As Range
For Each Zelle In ActiveSheet.UsedRange
If IsNumeric(Zelle) Then Zelle.Value = "'" & Zelle.Text
Next


damit die Zahlen richtig gespeichert werden, musst du beim Speichern (SaveAs) noch die Option setzen: "Local:=True"
das dürfte aber nach der obigen Schleife obsolet sein, da du ja keine Zahlen in deiner Datei mehr hast, sondern nur noch Texte.
Wenn du prüfen willst, ob eine Textdatei richtig erstellt wurde, musst du die Datei mit einem Texteditor öffnen, nicht mit Excel.
Gruß, Daniel

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige