Ersetzen - mal wieder ein Problem

Bild

Betrifft: Ersetzen - mal wieder ein Problem
von: steve
Geschrieben am: 02.03.2005 08:52:33
Hallo,
ich möchte gerne per Makro in ein paar Zellen ein , durch einen . ersetzen.
Ich weiß zwar, dass das hier schon ein paar Mal durchgekaut wurde, allerdings finde ich nichts so richtiges was auf mein Problem passt. Ich würde eben gerne nicht die ganze Tabelle ersetzen sondern nur den Bereich A3:A50 z.B.
Wie geht das?
MfG
Steve

Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: c0bRa
Geschrieben am: 02.03.2005 08:57:02
hio...
folgende formel in ne hilfszelle z.b. b3:
=WECHSELN(A4;".";",")
danach b3:b50 kopieren, a3 markieren, bearbeiten inhalte einfügen, werte...
schon sollte es gehen ;)

Das Forum lebt auch von Rückmeldungen...
c0bRa
Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: Slugger
Geschrieben am: 02.03.2005 08:57:06
Machst so, indem du einen Bereich definierst. Z. B.

Range("A1:G15").select
Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: steve
Geschrieben am: 02.03.2005 09:20:51
Ich bin ein blutiger Anfänger... bitte um Hilfe:

Sub ersetzen()
Range("A3:A50").Select
Cells.Replace What:=",", Replacement:="", LookAt:=xlPart _
, SearchOrder:=xlByRows, MatchCase:=False
End Sub

Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: bst
Geschrieben am: 02.03.2005 09:26:51
Hallo Steve,
beinahe. Damit kannst Du aber noch kein Komma innerhalb einer Zahl ersetzen.
HTH, Bernd
--

Sub ersetzen()
Range("A3:A50")..Replace What:=",", Replacement:="", LookAt:=xlPart _
, SearchOrder:=xlByRows, MatchCase:=False
End Sub

Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: steve
Geschrieben am: 02.03.2005 10:12:52
Toll und wie mache ich das, dass ich dieses blöde Komma endlich wegbekomme?
Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: bst
Geschrieben am: 02.03.2005 11:02:09
Hallo Steve,
zuerst mal die Korrektur von oben.
Man sollte halt einfach nichts posten, ohne es getestet zu haben.
Dieses geht NUR mit Texten, nicht mit Zahlen:

Sub ErsetzenInText()
   Range("A3:A50").Replace What:=",", Replacement:=".", LookAt:=xlPart _
      , SearchOrder:=xlByRows, MatchCase:=False
End Sub

Warum ?
IMHO wird eine Zahl (z.B. 1,2) hier zuerst in einen String gewandelt -> "1,2"
Dann wird das Komma durch einen Punkt ersetzt -> "1.2"
Vor dem Zurückschreiben erkennt Excel hier eine Zahl (im VBA sind Zahlen im US-Format!)
und wandelt diese wieder zurück -> 1.2
Diese Zahl wird nun unter Berücksichtigung des landesspezifischen Trennzeichens zurück
in die Zelle geschrieben. Womit Du wieder ein Komma hast ;-)
So sollte es gehen. Ohne Schleife habe ich es nicht hinbekommen.
Übrigens, ich hab's auf einem deutschen xl2000 verbrochen...
cu, Bernd
--

Sub Ersetzen()
   Dim cell As Range
   
   For Each cell In Range("A3:A50")
      cell.NumberFormat = "@"
      cell.Value = CStr(Replace(cell.Value, ",", "."))
   Next
End Sub

Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem
von: GeorgK
Geschrieben am: 02.03.2005 11:03:47
Hallo,
versuchs mal hiermit:

Sub umformatieren()
Range("A3:A35").Select
With Application
  .DecimalSeparator = "."
  .ThousandsSeparator = ","
  .UseSystemSeparators = False
End With
Columns(1).NumberFormat = "0.00"
End Sub

Grüße
GeorgK
Bild

Betrifft: AW: Ersetzen - mal wieder ein Problem o.T.
von: steve
Geschrieben am: 02.03.2005 11:11:18
Vielen leiben Dank.
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Ersetzen - mal wieder ein Problem"