Registriert seit: 07.11.2020
Version(en): 2016
Hi,
ich suche eine Lösung (Makro), um aus einer unbestimmten Anzahl von markierten Zellen den gesamten Inhalt abgesehen von der letzten Zeichenkette zu löschen.
Bsp.: Inhalt der Zelle ist "fla fsf fdasfe safd letzte,zeichenkette.2020". Nach z.B. Aktivierung des Makros bleibt in der Zelle "letzte,zeichenkette.2020" .
Gibt es da eine effiziente Lösung bzw. ein einfaches Makro etc. ?
Beste Grüße
Registriert seit: 16.08.2017
Version(en): 2007 / 2010 / Web
Hi
mit Formel.
Code:
____|______________________A_____________________|____________B___________|C|D|E|F|G|H|
1|fla fsf fdasfe safd letzte,zeichenkette.2020|letzte,zeichenkette.2020| | | | | | |
B1 =TEIL(A1;1+VERWEIS(6^6;FINDEN(" ";A1;SPALTE(1:1)));1000)
Gruß Elex
Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:1 Nutzer sagt Danke an Elex für diesen Beitrag 28
• TerraG
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
07.11.2020, 14:57
(Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2020, 15:05 von RPP63.)
Sub Splitten()
Dim Trennung
Trennung = Split("fla fsf fdasfe safd letzte,zeichenkette.2020", " ")
Debug.Print Trennung(UBound(Trennung))
End Sub
Ergibt
letzte,zeichenkette.2020
Gruß Ralf
Ach so:
Wenn Du etwas konkreteres lesen möchtest, solltest Du eine Beispieldatei hochladen, in der Format und mögliche Inhalte ersichtlich sind.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28
• TerraG
Registriert seit: 07.11.2020
Version(en): 2016
Hi,
Danke für die Anworten.
@Elex:
1. Was ist denn ein guter Weg das in ein Makro zu übertragen, sodass ich den Befehl direkt in mehreren Zellen anwenden kann und die Ergebnisse in die entsprechenden Zellen übertrage?
2. Ich muss das die Tage testen und gebe dann Rückmeldung
@RPP63:
Dein Code sieht mir jetzt danach aus als würde er genau nur den einen Beispieltext von mir trennen. Mir geht es aber um folgendes:
Nimm mal an Du hast 2000 Zellen mit beliebigem unterschiedlichem Text gefüllt und möchtest in jeder Zelle immer nur die letzte Zeichenkette beibehalten (wobei ich mit Zeichenketten jeden Textabschnitt getrennt durch ein Leerzeichen meine).
Bsp.: Zelle 1 "flerkj eralkjer Dashier", Zelle 2 " fenen öaljjk Jeneshier" -> Nach Markierung der Zellen und Anwendung des Makros soll übrig bleiben Zelle 1 "Dashier", Zelle 2 "Jeneshier".
LG
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
07.11.2020, 16:03
(Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2020, 16:03 von WillWissen.)
Hi,
ich würde das Problem so lösen:
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B |
1 | flerkj eralkjer Dashier | Dashier |
2 | fenen öaljjk Jeneshier | Jeneshier |
3 | funktioniert auch mit noch mehr Leerzeichen - !! | !! |
Zelle | Formel |
B1 | =TEIL(A1;FINDEN("_";WECHSELN(A1;" ";"_";LÄNGE(A1)-LÄNGE(WECHSELN(A1;" ";""))))+1;99) |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Jetzt nur die neue Spalte kopieren und an gleiche Stelle als Werte wieder einfügen. Danach Originalspalte entfernen (Spalte markieren==> STRG & - (minus). Das Ga ze kannst du auch mit dem Makrorekorder aufzeichnen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 08.05.2014
Version(en): Office 2010, Office 365, Office 365 Betakanal
Hallo,
eine Lösung die voraussetzt, dass Excel dynamische Arrays kennt ...
Code:
=RECHTS(A1;VERGLEICH(" ";LINKS(RECHTS(A1;SEQUENZ(LÄNGE(A1)));1);0)-1)
Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awardshttps://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Registriert seit: 07.11.2020
Version(en): 2016
07.11.2020, 20:09
(Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2020, 20:09 von TerraG.)
Guten Abend,
nochmal Danke für die Antworten. Ich habe die Lösung von WillWissen jetzt mal unter LibreOffice Calc getestet (Nutze privat öfter mal Ubuntu) und das funktioniert auch soweit gut. Wenn ich jedoch die Anzahl der Wörter/Zeichenketten auf eine bestimmte Menge erhöhe (Bei meinem Versuch auf 139) gibt die Funktion/Methode kein Ergebnis mehr aus.
Ne Ahnung woran das liegt? Und wie behebe ich das?
NACHTRAG: Es funktioniert wohl nur nicht, wenn ich in der Zelle die Kopierfunktion nutze, ansonsten funktioniert es immer. Könnte also auch ein LibreOffice Calc interner Bug sein. Ich teste es demnächst unter Excel und gebe dann Rückmeldung.
Danke für die Lösung.
Schönen Abend :)