Excel: Aus einer Spalte nur bestimmte Werte entfernen?

5 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Anscheinend verstehen Dich Andere hier anders als ich.
ICH würde sagen Du hast in A eine Zeichenkette stehen, die in B am Anfang einer längeren Zeichenkette steht und DIE soll aus B entfernt werden. Das wäre einfach nur in C1:

=ERSETZEN(B1;1;LÄNGE(A1)+1;"")

Vielleicht kannst Du das nochmal näher erklären, am besten mit mehreren Beispielen á la: In A1 steht: ..., in B1 steht: ... in C1 soll die Formel ergeben: ... .

Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

Als ersten Lösungsansatz kann ich mir vorstellen, mit den Iterationen von Excel zu arbeiten.

Datei → Optionen → Formeln → Iterative Berechnung aktivieren;

Dadurch stellst du sicher, dass Mehrfachvorkommen eines Zeichen ersetzt werden können.

In meinem Test habe ich in C2 folgende Formel geschrieben:

=WENN(D2=1;WENNFEHLER(ERSETZEN(B2;SUCHEN("0";B2);1;"");B2);WENNFEHLER(ERSETZEN(C2;SUCHEN("0";C2);1;"");C2))

In D2 steht

=D2+1

Damit ersetzt er alle Nullen im Text.

Im zweiten Schritt würde ich die Formel auf eine Matrixfunktion ausdehnen. Das bedeutet, ich definiere eine Matrix aller zu löschenden Zeichen und für jedes dieser Zeichen lösche ich jedes Vorkommen. Im Prinzip haben wir dann eine zweifach geschachtelte Schleife.

Eventuell könnte man es auch so lösen, dass man jedes Zeichen durch geht und anhand eines Zeichenvorrats entscheidet, ob das Zeichen gültig ist und in nur in diesem Fall das Zeichen hinzufügt.
Nach einiger Überlegung könnte das einfacher sein.

Ich melde mich...

Suboptimierer  12.03.2020, 13:10

Ich nochmal.

Vorausgesetzt, du hast die maximale Anzahl an Iterationen auf 50 gestellt, könntest du mit dieser Formel arbeiten:

=WENN(REST(D2;50)=1;"";F2)&WENN(REST(D2;50)<=LÄNGE(B2);WENNFEHLER(TEIL(E2;FINDEN(TEIL(B2;REST(D2;50);1);E2);1);"");"")

Dazu musst du in E2 die gültigen Zeichen angeben. Bei mir im Test

abcdefghijklmnopqrstuvwxyzäöüABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜß

Wenn du die Formel für mehrere Zellen verwenden möchtest, musst du E2 mit Dollarzeichen absolut setzen.

Für die 50 kannst du dir zum Beispiel einen Namen definieren.

Der Rest ist also Kosmetik.

0

format/formel nein

VBA gibt es wenn mans schreibt.

lg

M2SSD  12.03.2020, 12:34

soll ich ?

dafür braucht ich den spalten buchstaben?

Den text der entfernt gehört?

Bis zu welcher zeilennummer?

die umsetzung musst du jedoch machen.

Lg

1

Wenn's um bestimmte Zahlen und Sonderzeichen geht, dann am einfachsten mit Strg + H

Verstehe ich die Frage richtig, dass der Wert in Spalte A komplett gelöscht werden soll und von dem Eintrag in Spalte B lediglich das Wort "Text" stehen bleiben soll?

Erst sprichst Du von einer Spalte, dann gibt es aber Spalte A und Spalte B.

Welche "bestimmten Zahlen und Sonderzeichen" sollen denn gelöscht werden?

Eine etwas konkretere Fragestellung wäre hilfreich.

Gruß

Hannes