Excel 2010 Zahlenformat ohne Tausendertrennzeichen

Hallo zusammen,
in einer Kolonne von Zahlen muss ich die jeweilige Länge ermitteln und weiterverarbeiten.
z.B. 3,25 = 4 Zeichen (3 Ziffern und ein Komma)

Überschreitet die Zahl jedoch den Tausender, wird der Tausenderpunkt bei LÄNGE(A1) ebenfalls mitgezählt. Das verhagelt mir dann die nachfolgenden Berechnungen.

Ich bekomme den Tausenderpunkt nicht weg.

Habe folgendes erfolglos versucht:
a) alles Mögliche über Zellen formatieren (auch „benutzerdefiniert“)
b) in den Optionen von Excel das Häkchen entfernt, so dass das Tausendertrennzeichen vom Betriebsssystem (Win 8.1) nicht übernommen werden soll.

Auch diverse Internetsuchen waren nicht zielführend.

Weiß bitte jemand einen Rat? Vielen Dank.
Ludwig

Hallo Ludwig
wenn [korrektur] der Tausenderpunkt bei Länge() mit gezählt wird, so ist die Eingabezelle vermutlich als TEXT definiert. Das wäre auch der Grund warum Zahlenformate ignoriert werden.

> Ich würde zuerst den Bereich markieren und mit suchen/ersetzen alle Punkte entfernen.
> Um allen Eintragungen eine Zahl zu machen, schreibe in eine leere Zelle eine 1,
>> markieren > kopieren
>>> markiere alle Werte; Rechtsklick > Inhalte einfügen > wähle multiplizieren > ok

Wenn nicht noch Leerzeichen oder sonst irgendwelche Textzeichen in den Zellen stehen sollten jetzt alle Werte auf Einstellungen des Zellformates reagieren.

Tausender-Zeichen werden dann in Länge() nicht gezählt.
Du kannst den Wert aber ja viel bequemer **auf prüfen.

Gruß Holger**

Nachtrag: Re^2: Excel 2010 Zahlenformat ohne Tausendertrennzeichen
Hallo
ich habe gerade mal probiert, wenn der Inhalt der Zelle 123.456,78 als Text formatiert ist, reicht wie beschreiben die Multiplikation mit 1 damit Excel den Inhalt als ZAHL erkennt.

Die Länge reduziert sich sofort auf um ein Zeichen und im Zellformat kann man ein Zahlen-Format wählen.

Gruß Holger

Hallo Ludwig,

das kann ich nicht nachvollziehen. Bei mir steht der Dezimaltrenner auf Punkt und der Tausendertrenner auf Komma.
wenn ich eine Zahl in eine Zelle eingebe, hat die Zelle zunächst das Format Standard. Da werden keine Tusender-Trenner gesetzt.
Wenn du auf das Format Zahl gehts, kannst du das Häkchen rausnehmen bei „1000er-Trennzeichen verwenden“. Das Ändert zwar die Anzeige in der Zelle, die LÄNGE() bleibt aber gleich. Bei einer Zal, die du von Hand eingegeben hast, ist das immer die Länge, die du in der Eingabezeile obe siehst.
Etwas anders sieht es bei Berechnungen aus. Da hab ich das System noch nicht ganz verstanden. Beispiele:

Eingabe Zellenformat LÄNGE()
=1/3 Standard 17
=10/3 Standard 16
=0.1/3 Standard 18
=1/3 Zahl, 2 Dezimalst. 17
=Pi() Standard 16
=Pi() Zahl, 2 Dezimalst. 16
=Pi() Zahl. 20 Dezimalst. 16

Die LÄNGE() hängt auch hier wohl nicht von der Formatierung ab, sondern irgendwie von der Genauigkeit der Berechnung, die Excel hinbekommt.

Also, von deinem Tausendertrenner müsste LÄNGE() unbeeindruckt bleiben, egal ob du ihn anzeigen lässt oder nicht.
Wo das Problem bei dir sonst liegen könnte, weiß ich noch nicht. Vielleicht kannst du ja noch ein paar mehr Infos geben.

Gruß, Andreas

Hallo Andreas
Die Rechengenauigkeit von Excel endet bei 15 signifikanten Stellen.
Dein Beispiel zeigt es genau wenn du dir die Ergebnisse mal anschaust

dein Beispiel zeigt auch deutlich das Länge() eine TEXT-Funktion ist.
Sie zählt alles was an Zeichen in der Zelle drin steht, und wenn die Divisionen nicht auf gehen [wie bei dir durch 3] werden halt alle Zeichen in der Zelle gezählt.

Ich halte diese Funktion hier auch fehl am Platze.
Zahlen würde ich auf 1000 oder was weiß ich aber nicht mit Länge() prüfen.

Ich bin mir sehr sicher, das hier TEXT und keine Zahlenwerte eingefügt wurden.
siehe meine Antwort unten.
Gruß Holger

Hallo Andreas

Hi Holger,

Die Rechengenauigkeit von Excel endet bei 15 signifikanten
Stellen.
Dein Beispiel zeigt es genau wenn du dir die Ergebnisse mal
anschaust

Da war mein Gefühl gar nicht so schlecht.

Ich halte diese Funktion hier auch fehl am Platze.
Zahlen würde ich auf 1000 oder was weiß ich aber
nicht mit Länge() prüfen.

Ich dachte an sowas wie =GANZZAHL(LOG(A1))+…
Müsste man aber noch irgendwie verfeinern, denn 1,23 und 1,23456 liefern hier das selbe Ergebnis, was ja nicht sein soll.

Gruß Holger

Dto. Andreas

Hallo Andreas
Jo ganzzahl() lässt nun mal alles nach dem Komma weg.
Aber eine nette Alternative für den Vorkommaanteil.

Wenn es wirklich Sinn macht die Nachkommastellen zu zählen kann man ja ruhig Länge() verwenden.
=LÄNGE(A1)-FINDEN(",";A1)
vielleicht verrät uns Ludwig ja den Hintergrund der Rechnerei :smile:

Gruß Holger

Hallo,

die Zahlen können als TEXT aus einem anderen System kommen und daher interessiert der Tausendertrenner dann schon in LÄNGE().
Abhilfe könnte sein:
=LÄNGE(WECHSELN(A1;".";""))

VG

=LÄNGE(A1)-FINDEN(",";A1)

Da gibt’s aber ein Problem, wenn der Dezimaltrenner ein Punkt ist (wie bei mir).
Kennst du eine elegante Lösung, den Trenner per Formel rauszukriegen? Ich hab nur das hier hinbekommen:

=RECHTS(TEXT(0;"0.,");1)

eingesetzt in deine Formel dann also:

=LÄNGE(A1)-FINDEN(RECHTS(TEXT(0;"0.,");1);A1)

Gruß Holger

Gruß, Andreas

Hallo zusammen, da hab ich ja direkt und ungewollt eine (kleine) Lawine losgetreten. Euch allen herzlichen Dank. Mein Problem ist gelöst. Wie, das habe ich schon beschrieben:

=WENN(H4"";TEXT(H4;„0,00“);""). Jetzt waren die Tausenderpunkte weg, die ich sonst natürlich auch gerne benutze…

Warum es so und nicht anders gelang, ist mir noch nicht ganz klar. Vielleicht war der Inhalt der Zelle ungewollt doch schon zuvor als Text formatiert, im Rahmen der zahlreichen Versuche … Ich hätte ja gewettet, ich hätte es wieder geändert gehabt.

Jemand wollte wissen, warum ich das eigentlich brauche:
Zum Einreichen von Belegen scanne ich Rechnungen usw. und geben ihnen dann einen Dateinamen. Dieser soll systematisch aufgebaut sein, damit ich auch optisch volle Kontrolle über die Vollständigkeit der Angaben habe: Es muss daher alles „sauber“ untereinanderstehen.

Und zwar z.B. auch egal, wie viele Stellen die Rechnungsbeträge haben. Bei Beträgen mit weniger als 5 Stellen fülle ich mit WIEDERHOLEN(" ";Q4) auf und füge dann erst den Betrag ein. In Q4 wird der Wert ermittelt, wieviele Leereichen einzufügen sind, abhängig von der Länge des besagten Rechnungsbetrags. Und deswegten war/bin ich darauf ahgewiesen, dass Tausenderpunkte o.ä. nicht zur Textlänge hinzugezählt werden dürfen. Die Lösungsidee, doch abzufragen, ob die Zahl größer/gleich 1000 ist, war mir als Notlösung auch schon in den Sinn gekommen. Aber so ist es sicher „eleganter“ gelöst.

Hier zwei Beispielzeilen:

09 L 13-01-2015 — Rch (Dr. R…) — € 101,78
10a L 21-01-2015 — Rch (Alfred S…) — € 1421,39

In w-w-w funktioniert die Darstellung wegen Proportionalschrift nicht ganz. Bei mir in Excel dank COURIER aber schon. Der Geldbetrag am Ende des aus allerlei Komponenten zusammengesetzten Strings steht sauber rechtsbündig, ebenso stehen alle Einzelelemente exakt und damit übersichtlich genau untereinander. Ich würde sofort sehen, wenn eine Komponente fehlen würde. Alle Einzelkomponenten des Strings (abgesehen von „-“ usw.) werden aus entsprechenden Spalten und teils verborgenen Hilfsspalten zusammengeholt und mit „&“ verknüpft.
Zum Beispiel muss bei Nr. „09“ auch berücksichtigt werden, dass anders als bei „10a“ nicht noch ein Attribut „a“ dahintersteht. Dennoch stehen die nachfolgenden „L“ (bei mir) wieder genau untereinander.

Ich hoffe, ich konnte etwas zur Erklärung beitragen. Nochmals danke für die Hilfen!

Ludwig

Da gibt’s aber ein Problem, wenn der Dezimaltrenner ein Punkt ist (wie bei mir).
Kennst du eine elegante Lösung, den Trenner per Formel rauszukriegen? Ich hab nur das hier hinbekommen:

Wie wäre es hier mit:
=WECHSELN(A1;".";",")
Wenn du das Ergebnis noch mit 1 multiplizierst erkennt Excel auch den Zahlenwert und es funktionieren alle entsprechenden Formate.
=WECHSELN(A1;".";",")*1

In der Regel möchte man den Wert ja dort behalten wo er steht, dann mache das ohne Formel mit suchen / ersetzen [2007 >Startmenü >Suchen und auswählen >Ersetzen]
Suche nach Punkt; ersetzte durch Komma

Für die Umwandlung in einen Zahlenwert schreibst du in eine leere Zelle eine 1
>markieren > die 1 kopieren
>> markiere deine Werte > Rechtsklick > Inhalte einfügen > multiplizieren > ok
Das hat dann den gleichen Effekt wie der Weg über die Formeln.

Gruß Holger