Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
340to344
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
340to344
340to344
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dezimalkomma

Dezimalkomma
25.11.2003 12:53:57
Martin Herbig
Ich möchte eine ASCII-Datei aus Excel erzeugen und dabei alle Zahlen mit Dezimalkomma als Zahlen mit Dezimalpunkt speichern.

Wer kennt einen Weg ?

Danke Martin

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dezimalkomma
25.11.2003 13:28:16
Nayus
Hallo,
wenn ich Daten in einer ASCII-Datei speichere, verwende ich eine UDF für
die Umsetzung von Dezimalkomma nach Dezimalpunkt.

Gruß,
Arnim


Function dec_trz(ByVal p_num As Double, p_decs As Variant) As String
Dim l_zf, l_num As String
Dim l_decs As Integer
If IsNull(p_decs) Then
l_decs = 0
Else
l_decs = CInt(p_decs)
End If
If l_decs = 2 Then
l_num = Format$(p_num, "##########0.00")
ElseIf l_decs = 1 Then
l_num = Format$(p_num, "0.0")
Else
l_num = Format$(p_num, "###0")
End If
l_zf = ""
If CStr(p_num) <> "" Then
For i = 1 To Len(l_num)
If Mid$(l_num, i, 1) = "," Then
l_zf = l_zf & "."
Else
l_zf = l_zf & Mid$(l_num, i, 1)
End If
Next i
Else
l_zf = "NULL"
End If
dec_trz = l_zf
End Function

Anzeige
AW: Dezimalkomma
25.11.2003 13:52:31
Martin Herbig
Hallo Arnim,

Danke für die schnelle Antwort, aber könntest Du mir den Code noch näher erläutern ?

Martin
AW: Dezimalkomma
25.11.2003 14:16:26
Nayus
Hallo Martin,
EXCEL-gut , VBA-gut steht im Deinem Level, also gehe ich davon aus, dass Du
Module, UDFs und deren Verwendung kennst.
Beim Export gehe ich folgendermaßen vor:


Sub erzeugen, die durch die Zeilen meiner zu exportierenden Tabelle loopt.
In jeder Zeile die Zellinhalte zu einem String zusammenbauen. Ich verwende
als Feldtrenner ein Semikolon. Wenn in einer Zelle Dezimalzahlen stehen, rufe ich
die UDF ("dez_trz") mit Dezimalzahl und Anzahl der Nachkommastellen als Parameter.
Zurück bekomme ich eine Zeichenfolge, die ich dann in die Ergebnisvariable hineinkonkateniere.
Beispielcode:

Sub export2txt()
dim zf as string
open ausgabedatei for output as #1
for i = 1 to 1000
for j = 1 to 10
if j = 1 then
zf = cells(i,j)
else
zf = zf & ";"
if j = 3 then
'In Spalte C stehen Dezimalzahlen
zf = zf & dez_trz(cells(i,j), 2)
else
'sonst Text
zf = zf & "'" & cells(i,j) & "'"
end if
end if
next j
Print #1, zf
next i
close ausgabedatei
End Sub


Viel Erfolg,
Nayus
Anzeige
AW: Dezimalkomma
25.11.2003 14:24:39
Andi
Hallo Martin,

vielleicht ist Dir ja auch schon damit geholfen:
wenn Du in der System-Steuerung die Ländereinstellungen auf "England" setzt, hast Du in Excel automatisch Dezimalpunkte statt Dezimalkommas.

Schönen Gruß
Andi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige