Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Nullen am Ende entfernen; Formel oder VBA

Nullen am Ende entfernen; Formel oder VBA
26.04.2017 10:22:22
Walter
Guten Tag,
hat jemand eine Formel parat, welche mir in einem
markierten Bereich bei den Zahlen alle am Schluß stehenden
Nullen entfernt?
Danke und Gruß
Walter
Anzeige

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
...ungenügende Anforderungsbeschreibung!
26.04.2017 10:27:41
EtoPHG
Hallo Walter,
Das ist eine völlig ungenügende Anforderung.
Stell dir vor 'die Zahlen' sehen im markierten Bereich, z.b. so aus
100
10'000
1,00
4,32999000
1'000'000'000
Was bitte soll jetzt das Resultat sein?
Beschreibe genauer und noch bessert eine Beispielmappe hochladen!
Gruess Hansueli
Anzeige
AW: ...ungenügende Anforderungsbeschreibung!
26.04.2017 10:31:40
Walter
Hallo,
die Zahlen stehen wie folgt z.B. so untereinander (ganzzahlig, ohne Blank und sonstige Besonderheiten):
14430
9334
3155400
320
Das Resultat sollte so aussehen:
1443
9334
31554
32
Liebe Grüße
Walter
Per VBA...
26.04.2017 10:35:42
Case
Hallo Walter, :-)
... könntest Du es mal so probieren - Bereich markieren und Makro laufen lassen: ;-)
Option Explicit
Sub Main()
Dim rngRange As Range
For Each rngRange In Selection
While Right(rngRange, 1) = 0
rngRange = Left(rngRange, Len(rngRange) - 1)
Wend
Next rngRange
End Sub
Eventuell auch per Formel oder Zahlenformat. Vielleicht hat da noch jemand eine Idee. ;-)
Servus
Case

Anzeige
AW: Per VBA...
26.04.2017 10:51:28
Walter
Vielen dank Case.
VBA macht genauch, was ich will.
Grüße aus dem Taunus
Walter
Als Formel...
26.04.2017 10:46:19
EtoPHG
Hallo Walter,
=SUMMENPRODUKT((0&TEIL(SUMMENPRODUKT((0&TEIL(A1;ZEILE($1:$16);1))*10^(ZEILE($1:$16)-1));ZEILE($1:$16) ;1))*10^(ZEILE($1:$16)-1)) 
Gruess Hansueli
Anzeige
Als Formel...
26.04.2017 10:46:27
EtoPHG
Hallo Walter,
=SUMMENPRODUKT((0&TEIL(SUMMENPRODUKT((0&TEIL(A1;ZEILE($1:$16);1))*10^(ZEILE($1:$16)-1));ZEILE($1:$16) ;1))*10^(ZEILE($1:$16)-1)) 
Gruess Hansueli
=WECHSELN(A1/1000000;",";)*1
26.04.2017 10:46:53
WF
.
sehr raffiniert WF...
26.04.2017 10:53:36
EtoPHG
Hallo Walter (F!),
sehr raffiniert!
Würde dann aber
=WECHSELN(A1/10^15;",";) *1
vorziehen, um die Längeneinschränkung auf 6 Nullen etwas aufzuweichen. Und natürlich muss auch hier wieder darauf verwiesen werden, dass das Dezimalzeichen länderspezifisch ggf. angepasst werden muss ; -) .... Schweizer und so ....;-)
Gruess Hansueli
Anzeige
AW: sehr raffiniert WF...
26.04.2017 11:06:44
Walter
Vielen Dank allen Helfenden....
AW: sehr raffiniert WF...
26.04.2017 11:38:05
Daniel
Hi
noch ne Variante, die Unabhängig von der Anzahl der Stellen und Nullen ist:
=TEIL(--("0,"&A1);3;16)
wenn als zahl benötigt:

=--TEIL(--("0,"&A1);3;16)

wobei bei allen Methoden, die über Zahlenwerte gehen zu beachten ist, dass Stellenanzahl auf 15 begrenzt ist, danach wird gerundet.
für Texte mit beliebige Längen dann mit dieser Matrixformel (eingabe mit STRG+SHIFT+ENTER)
=LINKS(A1;MAX(WENN(ZEILE($Z$1:$Z$99)"0"; ZEILE($Z$1:$Z$99))))) 
(länge hier auf 99 begrenzt, kann aber bei Bedarf angepasst werden (dann dauert die Berechnung halt länger)
Gruß Daniel
Anzeige
was hat Dein Betreff ...
26.04.2017 13:34:06
WF
... mit dem Inhalt Deines Beitrags zu tun ?
Sinnvolle Betreffzeile
26.04.2017 13:54:51
Daniel
Hallo WF
das Thema "Betreff" diskutiere ich nur mit Menschen, die auch echte Betreffzeilen schreiben und nicht einfach nur den Anfang des ersten Satzes als Betreff verwenden.
Denn das ergibt in der Regel nicht nur einen viel schlechteren Betreff, als des der Betreff des Vorgängers war, es erschwert auch das Lesen dieses Beitrags, weil der erste Statz auseinander gerissen wird und so nicht mehr als ganzes gelesen werden kann.
Gruß Daniel
Anzeige
Ist ja in diesem Fall auch 'sehr schwer'!
26.04.2017 15:44:29
Luc:-?
Nämlich, die Teile von WFs einzigem Satz im Zusammenhang zu lesen, Daniel! ;-]
Am PC habe ich damit kein Problem! Und meine Teilung hier, dürfte es dir auch nicht leichter machen, falls du damit wirklich ein (technisches) Problem hast…
Gruß, Luc :-?
Besser informiert mit …
Anzeige
Er ist doch lernfähig.
26.04.2017 16:56:49
WF
"Sinnvolle Betreffzeile"
ist tatsächlich ein individueller, beitragsbezogener Text.
Erwartet hätte ich:
"AW: was hat Dein Betreff ..."
WF
AW: Er ist doch lernfähig.
26.04.2017 17:08:26
Daniel
naja, deswegen gehe ich davon aus, das ich wahrscheinlich schon mehr echte Betreffzeilen geschrieben habe als ihr beide zusammen.
Eher unwahrscheinlich, da du ja ziemlich oft ...
30.04.2017 05:00:59
Luc:-?
…auch zu deinem BT völlig unpassende und sogar fehlerhafte Betreffs übernimmst, Daniel,
während Betreffs, in denen der BT-Text beginnt per sé immer passen dürften… :-]
Luc :-?
Anzeige
Kindische Streiterei über Betreffzeilen
30.04.2017 08:44:24
Daniel
Nein Luc.
Der Betreff "Antwort auf diesen Beitrag" ist immer ein passender Betreff, während man bei "Eher unwahrscheinlich, da du ja ziemlich oft" weder erkennen kann, worum es geht, noch auf welchen Beitrag sich die Antwort beziehen soll, wenn man sich in der Beitragsliste befindet.
Gruß Daniel
Anzeige
AW: Helpers Guide :-)
30.04.2017 11:14:08
Gerd
Moin!
-NixBetreffNix
-Kommentare, Leidartikel
-Zwang zur autom. Erwiderung
Weiterhin froSchaff :-)
Gruß Gerd
AW: Helpers Guide ergänzung
30.04.2017 13:50:02
Daniel
Zwanhgafter Hang zur sinnfreien Abkürzungen
Auch dir weiterhin frohes Schaffen
Genauso kindisch wie dein Retourieren an WF! orT
30.04.2017 14:55:38
Luc:-?
:-]
Luc :-?
Anzeige
AW: wenn wirklich lange Ziffernfolge als Text ...
26.04.2017 19:25:00
...
Hallo @all,
... dann bedarf es auch keiner klassischen Matrixformel.
Ausreichend wäre dann z.B.:

=LINKS(A1;VERWEIS(9;1/(-TEIL(A1;SPALTE(1:1);1)
Gruß Werner
.. , - ...
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Nullen am Ende entfernen in Excel


Schritt-für-Schritt-Anleitung

Um Nullen am Ende von Zahlen in Excel zu entfernen, kannst du folgende Methoden anwenden:

  1. VBA-Makro:

    • Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

    • Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

    • Füge den folgenden Code ein:

      Option Explicit
      Sub Main()
       Dim rngRange As Range
       For Each rngRange In Selection
           While Right(rngRange, 1) = 0
               rngRange = Left(rngRange, Len(rngRange) - 1)
           Wend
       Next rngRange
      End Sub
    • Schließe den VBA-Editor und markiere die Zellen, in denen du die Nullen entfernen möchtest.

    • Führe das Makro aus, indem du ALT + F8 drückst und das Makro auswählst.

  2. Formel:

    • Verwende die folgende Formel, um Nullen am Ende zu entfernen:

      =SUMMENPRODUKT((0&TEIL(SUMMENPRODUKT((0&TEIL(A1;ZEILE($1:$16);1))*10^(ZEILE($1:$16)-1));ZEILE($1:$16);1))*10^(ZEILE($1:$16)-1))
    • Ersetze A1 durch die Adresse der Zelle, die die Zahl enthält.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass du den richtigen Bereich markiert hast und dass das Makro korrekt eingefügt wurde.
  • Fehler: Die Formel gibt nicht das erwartete Ergebnis zurück.

    • Lösung: Überprüfe, ob die Zellreferenzen korrekt sind und ob die Daten als Zahlen formatiert sind.

Alternative Methoden

  • Zahlenformat: Du kannst auch das Zahlenformat verwenden, um Nullen am Ende zu ignorieren. Wähle die Zellen aus, gehe zu Format Cells und wähle Custom. Gib ein Format wie 0.### ein, um nur die signifikanten Ziffern anzuzeigen.

  • Ersatz durch Text: Wenn du die Nullen durch ein anderes Zeichen ersetzen möchtest, kannst du die WECHSELN-Funktion verwenden:

    =WECHSELN(A1; "0"; "")

Praktische Beispiele

  • Beispiel 1: Wenn du die Zahl 3155400 hast, wird sie durch das VBA-Makro zu 31554.
  • Beispiel 2: Mit der Formel wird aus 1,00 die Zahl 1.

Tipps für Profis

  • Verwendung von Matrixformeln: Für komplexere Anforderungen kannst du Matrixformeln verwenden. Eine Matrixformel, die alle Nullen entfernt, könnte so aussehen:

    =LINKS(A1;MAX(WENN(ZEILE($Z$1:$Z$99)"0"; ZEILE($Z$1:$Z$99))))

    Denke daran, die Formel mit STRG + SHIFT + ENTER einzugeben.

  • Automatisierung: Überlege, dein Makro zu automatisieren, indem du es an einen Button bindest, um es einfacher zugänglich zu machen.


FAQ: Häufige Fragen

1. Wie entferne ich Nullen am Anfang einer Zahl in Excel?
Du kannst die Funktion =WERT(A1) verwenden, um führende Nullen zu entfernen.

2. Was passiert, wenn ich die Nullen in einem Textfeld habe?
Für Textfelder kannst du die WECHSELN-Funktion verwenden, um alle Nullen zu entfernen oder durch ein anderes Zeichen zu ersetzen.

3. Kann ich alle Nullen in einer Spalte gleichzeitig entfernen?
Ja, markiere die gesamte Spalte und führe das VBA-Makro oder die Formel auf den markierten Bereich an, um alle Nullen auf einmal zu entfernen.

4. Wie viele Nullen kann ich mit einer Formel entfernen?
Die meisten Formeln in Excel sind auf 15 signifikante Stellen begrenzt; daher kann es zu Rundungsfehlern kommen, wenn du sehr große Zahlen hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige