Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

speichern von xlsx als csv (UTF-8) mit Zahlenformat

Forumthread: speichern von xlsx als csv (UTF-8) mit Zahlenformat

speichern von xlsx als csv (UTF-8) mit Zahlenformat
01.08.2024 12:55:24
Guzzischmid
Hallo Zusammen,

habe ein Problemchen mit einer VBA Anwendung in Excel und hoffe hier Hilfe zu bekommen :-)

Ich habe eine xlsx-Datei die ich seither erfolgreich mit dem nachfolgenden Code, als Csv (UTF8) gespeichert habe:
**************************************************************************************************************************
Sub CSV_Speichern()
Dim fsT As Object, sFilename As Variant, tmpStr As String
Dim lS As Long, lZ As Long, l As Long
Dim SrcRg As Range

'Pfad und Name der zu erstellenden Datei
sFilename = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")

If Selection.Cells.Count > 1 Then
Set SrcRg = Selection
Else
Set SrcRg = ActiveSheet.UsedRange
End If

With SrcRg
For lZ = 1 To .Rows.Count
For lS = 1 To .Columns.Count '- 1 ' Das -1 ist evtl.notwendig wenn die Anzahl der Spalten in der Liste nicht stimmt
tmpStr = tmpStr & """" & .Cells(lZ, lS) & """;"
Next lS
tmpStr = Left(tmpStr, Len(tmpStr) - 1) & vbCrLf
Next lZ
End With

Set fsT = CreateObject("ADODB.Stream")
fsT.Type = 2 'Stream-Typ: Text/String
fsT.Charset = "utf-8" 'Zeichensatz
fsT.Open 'Stream öffnen
fsT.WriteText tmpStr 'Daten schreiben
fsT.SaveToFile sFilename, 2 'Datei speichern
Set fsT = Nothing

Windows("Übersetzungsliste.xlsx").Close False
End Sub
***********************************************************************************************************

Nun habe ich meine xlsx um 2 Spalten erweitert, von denen eine Zahlenwerte mit 2 Dezimalstellen enthält.
Ich möchte diese Zahlen gerne mit den 2 Dezimalstellen in die CSV übernehmen.
Mit meinem og. Code funktioniert das nicht und ich habe keine Ahnung wie ich es anstellen könnte.

Im Moment verwende ich UTF-8 mit Textqualifizierer, auf die ich aber beim Speichern auch verzichten könnte.
Was mich wundert ist daß die manuelle Speicherung der Datei in Excel als csv(UTF-8) mit erhalt des Zahlenformats funktioniert.
Nur mit VBA klappt es nicht.
Für Tipps wäre ich sehr dankbar.
Vielen Dank im Voraus
Gruß Oliver
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: speichern von xlsx als csv (UTF-8) mit Zahlenformat
01.08.2024 13:38:16
Uduuh
Hallo,
versuch's mit
tmpStr = tmpStr & """" & .Cells(lZ, lS).Text & """;"


Gruß aus'm Pott
Udo
AW: speichern von xlsx als csv (UTF-8) mit Zahlenformat
01.08.2024 13:54:31
Guzzischmid
Hallo Udo !

Mensch, das funktioniert top !
Erste Antwort zum Erfolg geführt. Wie viel Zeit ich da schon vertrödelt hab mit dem Mist :-(
Das Leben könnte einfacher sein, wenn man mehr Wissen hätte ;-)
Vielen Dank an dich und schöne Grüße
OLiver
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige