ich habe einen Code gefunden und angepasst, der als Text gespeichert Zahlen in verschiedene Formate umwandelt. Um das ganze benutzerfreundlicher zu gestalten, habe ich mir eine UserForm mit Combo- und TextBoxen gebaut. Mittels der ComboBoxen können verscheidene Formate, wie "Standard, Zahl, Datum etc." ausgewählt werden. In die TextBoxen sollen die Nummer der Spalten, getrennt mit einem Kommata, eingetragen werden.
Hier mein Code:
Dim LetzteZeile,i, s As Long
Dim Spalten
Spalten = Array("UserForm1.TextBox3.Value") ' Das Problem!
For s = 0 To UBound(Spalten) - 1
LetzteZeile = Cells(Rows.Count, Spalten(s)).End(xlUp).Row
For i = 3 To LetzteZeile
With Cells(i, Spalten(s))
If .Value "" Then
.Value = CDbl(.Value)
Select Case UserForm1.ComboBox1.Value
Case "General"
.NumberFormat = "General"
Case "Number"
.NumberFormat = "#,##0.00"
Case "Number"
.NumberFormat = "0"
Case "Currency"
.NumberFormat = "#,##0.00;[Red]-#,##0.00"
Case "Time "
.NumberFormat = "hh:mm:ss"
Case "Date"
.NumberFormat = "dd/mm/yyyy"
End Select
End If
End With
Next
Next
Mein Problem:
Mein Code funktioniert nur, wenn ich die Spalten direkt in das Array im Code eintrage. Allerdings möchte ich, dass die Werte aus der TextBox übernommen werden. Die Auswahl der Formate über die ComboBoxen funktioniert.
Bitte um Eure Hilfe!
Grüße
Peter