Sub strUmw()
Columns("J:J").Select
Selection.NumberFormat = "@"
End Sub
Es stehen Zahlen Zahlen und Strings drinne, aber die Zahlen erkennt er nicht als String?
Danke erik
Werte steht immer Rechtsbündig
Text steht immer Linksbündig
Noch mal kontrollieren bitte.
Die Sub ist OK.
mfg Becker
der Code ist in Ordnung, er weist allen Zellen der Spalte das Textformat zu. Was genau wird bei Dir nicht als Text formatiert?
Gruß
Peter
hab das gerade noch einmal getestet, die Ausrichtung hat zumindest in Version 8 keinen Einfluss auf die Formatzuweisung.
Gruß
Peter
Steht der Inhalt ohne Formatieren "Rechts" dann ist es ein Wert und er kann damit rechnen.
Siehe Schulausbildung 3.Klasse in Mathe.
Zahlen Rechtbündig für die schriftliche Addition Dämmerts?
mfg Becker
durch Formatierung ändert sich nicht der Datentyp der Zelle sondern nur das Format der Zelle!
Gruß
Peter
aus der VBA-Hilfe:
In diesem Beispiel wird die CStr-Funktion verwendet, um einen numerischen Wert in den Typ String umzuwandeln.
Dim TestDouble, TestString
TestDouble = 437.324 ' TestDouble hat den Typ Double.
TestString = CStr(TestDouble) ' TestString enthält "437,324".
Gruß
Peter
Um eine Spalte in Excel in einen String umzuwandeln, kannst du folgenden VBA-Code verwenden:
Sub strUmw()
Columns("J:J").Select
Selection.NumberFormat = "@"
End Sub
Dieser Code weist allen Zellen in der Spalte J das Textformat zu. Achte darauf, dass die Zellen, die du umwandeln möchtest, vorher ausgewählt sind. Wenn du sicherstellen möchtest, dass die Zahlen als Text erkannt werden, überprüfe, ob sie linksbündig in der Zelle stehen. Werte werden in Excel rechtsbündig angezeigt.
Zahlen werden nicht als Text erkannt:
Typname wird nicht erkannt:
If TypeName(Cells(lngZeile, 10).Value) = "String" Then
' Dein Code hier
End If
Stelle sicher, dass du nach der Umwandlung in String prüfst.
Eine weitere Möglichkeit, um eine Spalte in Text umzuwandeln, ist die Verwendung der CStr-Funktion in VBA:
Dim TestDouble As Double
Dim TestString As String
TestDouble = 437.324
TestString = CStr(TestDouble)
Diese Methode ist besonders hilfreich, wenn du sicherstellen möchtest, dass ein Zahlenwert in einen String umgewandelt wird.
Angenommen, du hast in der Spalte A Zahlen, die du in Text umwandeln möchtest:
VBA-Ansatz:
Sub SpalteInTextUmwandeln()
Columns("A:A").Select
Selection.NumberFormat = "@"
End Sub
Direkt in Excel:
Trim-Funktion, um unerwünschte Leerzeichen in Text zu entfernen, bevor du ihn weiterverarbeitest.Dim CleanString As String
CleanString = Trim(Cells(lngZeile, 10).Value)
1. Wie erkenne ich, ob eine Zahl als Text formatiert ist? Die Ausrichtung in der Zelle kann dir einen Hinweis geben: Text ist linksbündig, während Zahlen rechtsbündig angezeigt werden.
2. Was passiert, wenn ich eine Zahl im Textformat in Berechnungen verwenden möchte? Wenn du mit Zahlen im Textformat rechnest, wird Excel einen Fehler ausgeben. Du musst die Zahlen zuerst in ein numerisches Format umwandeln, bevor du Berechnungen durchführst.