Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
160to164
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
160to164
160to164
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Replace

Replace
17.09.2002 11:12:25
Lars Peer Finke
Hallo,

ich importiere Daten in Excel, die Zahlen als Strings enthalten im Format 0.000, also mit "." als Trennzeichen. Nun möchte ich automatisch alle Punkte in Kommata ersetzen, damit ich gleich mit den Zahlen in Excel weiterrechnen kann. Dazu habe ich das folgende Makro aufgezeichnet:

Cells.Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False

Beim Aufzeichnen läuft alles ganz prima. Wenn das Makro aber hinterher gestartet wird, so ist die Wirkung total anders. Excel löscht nur alle "." ohne mit einem "," zu ersetzen. Ich bekomme also in Abhängigkeit von den Nachkommastellen total falsche Zahlen. Die Worksheet-Function "SUBSTITUTE" funktioniert auch nicht richtig.

Weiß jemand Rat ?

Gruß
Lars Peer

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
So sollte es gehen...
17.09.2002 12:55:47
L.Vira
Option Explicit
Const What2Find As String = "."
Sub Punkt_in_Komma()
Dim c As Range, SAdresse As String, Punkt As String, Wert
With Cells
Set c = .Find(What2Find, LookIn:=xlValues, Lookat:=xlPart, SearchOrder:=2)
If Not c Is Nothing Then
SAdresse = c.Address
Do
On Error GoTo ENDE
Wert = c.Value
Punkt = InStr(Wert, ".")
If Punkt <> 0 Then Mid(Wert, Punkt, 1) = ","
c.Value = CDbl(Wert)
c.NumberFormat = "General"
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> SAdresse
End If
End With
ENDE:
End Sub
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige