Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
988to992
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
988to992
988to992
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zahl in Text

Zahl in Text
23.06.2008 17:13:15
Tommi
Hallöchen,
ich habe ein riesiges Excel-Sheet in dem überall so Werte drin stehen wie
-031-649633
Nun würde ich gerne erreichen, dass nur! die - verschwinden. die Zahlen aber in genau der Form erhalten bleiben, also wenn eine führende Null ist, dann bleibt eine, wenn 2 dann zwei usw.
Irgendwie müsste man das also vermutlich in Text umwandeln, aber das klappt irgendwie nicht. Gab es da nicht irgendeinen Trick, dass man das nicht für jede Zelle machen muss? (also nicht in jede Zelle reinklicken, damit er das Format übernimmt?)
LG,
Tommi

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahl in Text
23.06.2008 17:48:53
Matthias
Hallo
Also wenn die Werte schon so dastehen, dann ist es doch schon Text, oder?
sonst würde Excel aus: -031-649633 sofort =-31-649633 machen.
das wäre im Ergebnis dann -649664
Drück also STRG+H
Es öffnet sich das Suchen-Ersetzen-Fenster.
Suchen nach - ersetzen durch Leerstring (1 x Leertaste drücken)
Sollte eigentlich genauso funktionieren.
Gruß Matthias

AW: Zahl in Text
23.06.2008 17:57:00
Tommi
Hallo Matthias,
es ist aber anscheinend nicht Text, wenn ich das mache (suche/ersetze) dann wird aus
-031-649633 leider
31649633
und das darf nicht passieren.
Anscheinend wandelt Excel von alleine von Text in Zahl um, wenn es eine ersetzung vornimmt und in der Zelle eine Zahl (nach der Ersetzung) entsteht. Ich weiss nicht warum, aber das passiert leider.
Interessanter Weise ist auch nach dem ersetzen des - Zeichens und dem verschwinden der führenden Null immer noch das Format TEXT! vorhanden...
Irgendwie komisch.
LG,
Tommi

Anzeige
AW: Zahl in Text
23.06.2008 18:06:00
fcs
Hallo Tommi,
kopiere das folgende Makro in ein Modul in deiner persönlichen Makroarbeitsmappe.
Markiere die Zellen in denen du das Minuszeichen ersetzen willst und starte das Makro.
Das Makro fügt vor den Ziffern ein Hochkamma ein, dadurch wird verhindert, dass Excel beim Erstzen den Inhalt in eine Zahl verwandelt.
Gruß
Franz

Sub MinusErsetzen()
Dim Zelle As Range
For Each Zelle In Selection
Zelle.Value = "'" & Replace(Zelle.Text, "-", "", 1)
Next
End Sub


AW: Zahl in Text
23.06.2008 18:17:00
Tommi
Hallo Franz,
ui, das ist dann die elegante Version ;) - dummerweise sollte man nicht das ganze Arbeitsblatt markieren - der ersetzt immer noch munter vor sich hin ;)
Die Variante des Zugriffs auf einen Bereich muss ich mir mal näher anschauen...
Danke!
Ändert aber nix daran, warum Excel das nicht mit S/E hinbekommt, ist das ein Bug? Oder kann man das irgendwo vlt. ausschalten?
LG,
Tommi

Anzeige
AW: Zahl in Text
23.06.2008 18:25:11
Matthias
Hallo
Probiers mal mit dieser Datei. mit Suchen/Ersetzen
https://www.herber.de/bbs/user/53291.xls
sonst lad doch Deine Datei mal hoch.
Ich denke wichtig ist beim Import der Daten das Deine Tabelle schon VORHER als Text formatiert sein muß.
Gruß Matthias

AW: Zahl in Text
23.06.2008 18:29:06
Tommi
Hallo Matthias,
welcher Import? Es ist eine Excel-Datei. Wie gesagt, man kann das auch einfach nachbauen, nimm eine ExcelDatei, setze das Format auf Text, gib -0234 ein und ersetzte generell - durch NIX, schwupps, schon steht da 234 und nicht 0234.
Warum? ... keine Ahnung.
LG,
Tommi

Anzeige
AW: Zahl in Text
23.06.2008 18:45:00
Holger
Hallo Leute, ersetzt mal den Bindestrich durch ein Leerzeichen. Da muss man nix vorher Formatieren oder so. Funktioniert prima.
Grüße aus der Hauptstadt

AW: Ganau das habe ich ja vorgeschlagen !
23.06.2008 18:53:00
Holger
sorry @Matthias, ich meinte auch @Tommy und die anderen.
Grüße aus der Hauptstadt

AW: Zahl in Text
23.06.2008 18:53:21
Tommi
Hallo,
es geht nicht um führende Minusse! Es geht um alle möglichen Kombinationen, da gibt es auch mal -0098-09000989-098 oder 0095-89431234 usw.
Es geht einfach darum aus allen Zellen die -Zeichen 100% zu entfernen ohne das der Rest in irgendeiner Form angetastet wird. Wie geschrieben, mit meiner VBA-Routine klappt es ja, ich frage mich nur, warum ein einfaches S/E nicht zum Ziel führt, wenn das Format der Zelle doch Text ist.
Tommi

Anzeige
Mit Suchen und Ersetzen...
23.06.2008 19:25:00
{Boris}
Hi Tommi,
wird IMMER gleichzeitig eine Berechnung (Auswertung) angestoßen - da kannst Du die Zelle vorher formatieren, wie Du willst.
Das Textformat ist sowieso Murks (meine Meinung) - schreibe Text lieber mit einem einleitenden Hochkomma ' in die Zelle.
Grüße Boris

AW: Mit Suchen und Ersetzen...
23.06.2008 19:33:07
Tommi
Hallo Boris,
das hilft wenig, wenn man eine solche Datei bekommt, aber damit ist meine Frage geklärt woran es liegt. Das mit 'der Ausdruck wird immer ausgewertet' habe ich ja befürchtet, dann geht es wirklich nur per VBA, okay, ist ja ein gangbarer Weg.
Danke für die Info!
LG und einen schönen Abend,
Tommi

Anzeige
AW: Zahl in Text
24.06.2008 08:30:07
fcs
Hallo tommi,
falls die Ersetzung auf alle benutzten Zellen des Blattes angewendet werden soll, dann:

Sub MinusErsetzen()
Dim Zelle As Range
For Each Zelle In ActiveSheet.UsedRange
Zelle.Value = "'" & Replace(Zelle.Text, "-", "", 1)
Next
End Sub


Gruß
Franz

AW: Zahl in Text
23.06.2008 17:54:44
Peter
Hallo Tommi,
geht das nicht über Menü -Bearbeiten -Ersetzen?
- (Minus) ersetzen durch (nix), also nix auswählen auch kein Leerzeichen.
Gruß
Peter

AW: Zahl in Text
23.06.2008 18:07:10
Tommi
Nein, es geht nicht mit suchen/ersetzen, Excel konvertiert das Ersetzte anscheinend in eine Zahl, wenn es denn eine Zahl ist und schreibt die Zahl dann wieder in das Feld - damit sind führende Nullen aber leider weg.
Ich habe nun mal folgendes Script geschrieben, damit geht es. Aber das Verhalten von Excel finde ich schon merkwürdig. Ich war auch davon ausgegangen, dass ein Suche/Ersetze reichen sollte...
Sehr komisch, ich frage mich woran das liegt.
Tommi
Dim h As Integer, x As Integer, y As Integer
Dim v1 As String, v2 As String
For y = 5 To 10000
For x = 1 To 250
v1 = ""
v2 = Cells(y, x)
For h = 1 To Len(v2)
If (Mid(Cells(y, x), h, 1) "-") Then
v1 = v1 + Mid(Cells(y, x), h, 1)
End If
Next h
If (v1 "") Then
Cells(y, x) = v1
End If
Next x
Next y
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige