Clever-Excel-Forum

Normale Version: Textausgabe von Zeichen bis Zeichen zu beiden Seiten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

Ich bin auf der Suche nach einer Formel die mir einen bestimmte Textteil einer Zelle ausgibt. Der Zellinhalt ist immer unterschiedlich und sieht vom Format so aus (X entspricht beliebigem Text):


X-XX_XXX_1.1.1_XX9832_XXXXXXXXXXXXXX
X-XX_XX_XXX_1a.1.1_XXX_XXXXXXXXXXX
X-XXX_XXX_XXXX_1.1.1.1_XX111_XXXXXXXXXXXXXXXXXXXXXXX


Ich hattes es zunächst mit vielen Hilfsspalten versucht, aber die Inkonsistenz im Zellinhalt macht mir irgendwo immer einen Strich durch die Rechnung. Daher habe ich einmal versucht mein Problem in eine Regel zu packen:
Ich möchte in einer separaten Zelle alles was um die "." bis zu "_" herum steht ausgegeben haben, sowohl nach links als auch rechts. Die Ausgabe sollte dementsprechend sein:

1.1.1
1a.1.1
1.1.1.1

Hat jemand da eine Idee parat? Ich komme da nicht mehr weiter.

Vielen Dank und Grüße!
Moin,

Arbeitsblatt mit dem Namen 'Tabelle2'
AB
1Text
2X-XX_XXX_1.1.1_XX9832_XXXXXXXXXXXXXX1.1.1
3X-XX_XX_XXX_1a.1.1_XXX_XXXXXXXXXXX1a.1.1
4X-XXX_XXX_XXXX_1.1.1.1_XX111_XXXXXXXXXXXXXXXXXXXXXXX1.1.1.1

ZelleFormel
B2=LINKS(TEIL(A2;FINDEN("_1";A2)+1;10);FINDEN("_";TEIL(A2;FINDEN("_1";A2)+1;10))-1)
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Hi,

erstmal vielen Dank für die Antworten!

Die Formel passt gut vom Resultat her, allerdings hatte ich vergessen zu erwähnen, dass es sich bei den Zahlen nicht nur um 1 handelt, sondern um alle von 0-9.
Ist der Thread kaputt? Sehe Antworten nur, wenn ich auf Antworten klicke.
Hi,

bzgl. des korrupten Threads habe ich die Admins informiert.

Für dein Problem, dass sich auch andere Ziffern im Text befinden können, finde ich aktuell keine Formellösung.
Hallo,

ich habe Fenneks Beitrag zur weiteren Analyse archiviert.
Der Thread sollte jetzt wieder funktionieren.

Gruß Uwe
Hi

mit Formeln:
____|__________________A__________________|___B__|_C|_D_|_E|_F_|
   1|X-XX_XXX_1.1.1_XX9832_XXXXXXXXXXXXXX | 1.1.1|  | 11| 9| 14|


B1    =TEIL(A1;E1+1;F1-E1)
D1    =SUCHEN(".";A1)
E1    =MAX((TEIL(A1;ZEILE(A1:INDEX(A:A;D1));1)="_")*ZEILE(A1:INDEX(A:A;D1)))   'die Formel mit shift+strg+Enter abschliessen
F1    =SUCHEN("_";A1;D1)-1

oder als Funktion(VBA):
Den Code in ein allgemeines Modul.  Für das Ergebnis aus dem String in A1 schreibst du in eine Zelle  =Trennen(A1)
Code:
Public Function Trennen(rng As Range)
Dim a As Variant, b As Variant
a = Split(rng, "_")
For Each b In a
  If InStr(1, b, ".") > 0 Then Trennen = b
Next b
End Function


Gruß Elex