Danke für alle Tipps! :-)
Alex
Folgendes Makro dürfte Dein Problem lösen, wenn du es auf
VBA Basis haben möchtest;)
Sub test()
Dim ws As Worksheet
Dim dblZ As Double
Dim rngB As Range
Dim intX As Integer
Dim strColumnDef As String
strColumnDef = "A"
Set ws = ActiveSheet
With ws
For intX = 1 To .Range(strColumnDef & _
.Range(strColumnDef & ws.Rows.Count) _
.End(xlUp).Row).Row
Set rngB = .Range(strColumnDef & intX)
With rngB
If IsNumeric(.Value) Then
dblZ = CDbl(.Value)
.NumberFormat = "General"
.Value = dblZ
End If
End With
Next
End With
End Sub
Du mußt im Prinzip nur noch oben die Spalte einstellen.
Alexander Keune schrieb:
Zeichne den Vorgang per Makro-Rekorder auf
MfG Frank
_____________________________________________________
Frank Arendt-Theilen, Microsoft MVP für Excel, Hameln
eMail: Thei...@t-online.de, Homepage: http://www.xl-faq.de
Alexander Keune schrieb:
Hier Variante 3:
Markiere die Spalte mit den Werten (nur eine auf's mal) und stelle das
Zellenformat 'Standart' oder 'Zahl' ein; dann, ohne die Markierung zu
verändern --> Menü Daten --> Text in Spalten --> [Fertig stellen]. Nun
sind die Werte als Zahlen in den Zellen.
Für mehrere Spalten miteinander kannst Du das folgende Makro einetzen
(eine Ableitung aus obiger Vorgehensweise):
Sub TextSpalten_ins_Zahlenformat()
'Wandelt als Text vorliegende Zahlenwerte in 'echte' Zahlen um
'Spaltenbereich markieren (auch zu viele) und starten
Dim Spalte As Range
On Error Resume Next
For Each Spalte In Selection.Columns
'Hier ev. das Zahlenformat dierekt eingeben: "0.00"
Columns(Spalte.Column).NumberFormat = "General"
Columns(Spalte.Column).TextToColumns
Next
End Sub
--
Mit freundlichen Grüssen
Thomas Ramel
- MVP für Microsoft-Excel -
Ich hab mich an Thomas' 2. Variante gehalten und es jetzt so eingebaut:
...
Columns("C:C").NumberFormat = "General"
Columns("C:C").TextToColumns
Columns("C:C").NumberFormat = "#,##0.00"" m²"""
...
Funktioniert einwandfrei! :-) Danke!
Alex
Alexander Keune schrieb:
>
> Danke für alle Antworten! :-)
>
> Ich hab mich an Thomas' 2. Variante gehalten und es jetzt so eingebaut:
Das freut mich natürlcih ;-)
> ...
>
> Columns("C:C").NumberFormat = "General"
> Columns("C:C").TextToColumns
> Columns("C:C").NumberFormat = "#,##0.00"" m²"""
>
> ...
>
> Funktioniert einwandfrei! :-) Danke!
Es geht sogar noch etwas kürzer; Du kannst das gewünschte Format direkt
zuweisen und dann umwandeln:
Sub TextSpalten_ins_Zahlenformat()
'Wandelt als Text vorliegende Zahlenwerte in 'echte' Zahlen um
Columns("C:C").NumberFormat = "#,##0.00"" m²"""
Columns("C:C").TextToColumns