Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1860to1864
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

in text 6 Grossbuchstaben finden

in text 6 Grossbuchstaben finden
04.01.2022 09:06:19
Johannes
Hallo zusammen,
ich möchte aus einem Textstring die ein Wort mit 6 Großbuchstabe rausfiltern.
Hat da jemand eine Idee? Ich habs mal irgendwo gelesen aber finde es natürlich jetzt wo Ichs brauche nicht mehr.
So sieht der String z. B.aus.
98005_theTrendTrader MT4 Balance Forex DailySame EURJPY M5 Leverage100 FixedLots TrendH1 GMT0
und ich will die
EURJPY
in einer extra Zelle haben
Danke
Johannes
.

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: RegEx.Pattern [A-Z]{6}
04.01.2022 09:31:22
Fennek
Hallo,
mit RegEx ist die Programmierung relativ einfach. Es ginge auch mit LIKE.
mfg
AW: RegEx.Pattern [A-Z]{6} ?
04.01.2022 09:57:54
Johannes
Danke,
aber wie bringe ich das in einer Formel unter?
Google war da nicht hilfreich, nicht bei "regex" und auch nicht bei "Like"
wenn mein Text in z. B. B3 steht,
Johannes
AW: RegEx.Pattern [A-Z]{6} ?
04.01.2022 10:54:02
onur
RegEx kennst du nicht? Verpasst du nix. :)
Stell dir vor, es hätte Jemand ein schweizer Taschenmeser erfunden, das 1577 Funktionen hat, aber 1,20 m gross und 38 kg schwer ist und mit einem 1200-seitigem Handbuch geliefert wird. Also äusserst nützlich und praktisch.
AW: Handbuch bloß 1.200 Seiten?
04.01.2022 13:13:06
Fennek
Da es verschieden RegEx-Versionen gibt
- Excel
- Word
- Powershell
- Javascript
gibt es für jede Version so ein kleines Handbuch.
Anzeige
AW: in text 6 Grossbuchstaben finden
04.01.2022 09:58:55
{Boris}
Hi,
alternativ per Formel. Voraussetzung: Vor dem Währungspaar steht immer ein Leerzeichen - und vor diesem Währungspaar gibt es keinen anderen Treffer.
=TEIL(A1;AGGREGAT(15;6;ZEILE(1:200)/(IDENTISCH(TEIL(A1;ZEILE(1:200);8);GROSS(TEIL(A1;ZEILE(1:200);8)) )/(LINKS(TEIL(A1;ZEILE(1:200);8))=" "));ZEILE(1:200))+1;6)
Das hier z.B. geht dann nicht:
98005_theTrendTrader 123456 MT4 Balance Forex DailySame EURJPY M5 Leverage100 FixedLots TrendH1 GMT0
da die Formel dann 123456 findet.
VG, Boris
AW: hierzu festgestellt und nachgefragt ...
04.01.2022 14:07:11
neopa
Hallo Boris,
... Deine Formel müsste mE noch erweitert werden, damit auch eine entsprechende Zeichenfolge am Anfang des Textes gefunden wird und das auch nur Wörter mit genau 6 Großbuchstaben zwischen zwei Leerzeichen bzw. am Anfang oder Ende des Textes gefunden wird. Deine Formel findet auch längere entsprechende Zeichenketten (die auf 6 Stellen verkürzt ausgegeben werden).
Das Problem mit den Ziffern könnte mE noch durch eine Formelerweiterung gelöst werden. Momentan wird nicht nur eine Zeichenfolge von 6 Ziffern zwischen zwei Leerzeichen gefunden sondern auch Kombinationen von Großbuchstaben mit Ziffern.
Meine Frage an Johannes wäre deshalb, darf das zu findende Wort Ziffern (und/oder Sonderzeichen) enthalten oder nicht?
Gruß Werner
.. , - ...
Anzeige
AW: hierzu festgestellt und nachgefragt ...
04.01.2022 14:23:11
Johannes
Hallo,
nein, das Währungspaar besteht immer nur 6 Buchstaben
die Ausnahme wären dann US100 oder DAX40
das wären dann aber auch keine 6 Zeichen mehr. Und dann mit dieser Formel nicht zu finden.
Da das die Ausnahme ist, würde ich das manuell eintragen, wenn mal so weit ist.
danke
Johannes
AW: hierzu festgestellt und nachgefragt ...
04.01.2022 14:27:47
Johannes
Würde das auch ohne Leerzeichen gehen?
Das könnte mal eher vorkommen.
AW: so nicht eindeutig ...
04.01.2022 15:50:03
neopa
Hallo Johannes,
... ein Wort zeichnet sich normalerweise dadurch aus, dass es wenn innerhalb eines Textes steht, dort durch Leerzeichen von den anderen Textteilen getrennt ist. Steht das Wort am Anfang oder am Ende einer Textkette muss nach bzw. vor dem Wort ein solches " " vorhanden sein. Was genau meinst Du jetzt also mit "Würde das auch ohne Leerzeichen gehen"?
Gruß Werner
.. , - ...
Anzeige
AW: so nicht eindeutig ...
05.01.2022 14:24:44
Johannes
Diese Setfiles kommen nicht von mir, und ich hatte mal 6, die anstatt Leerzeichen eine Unterlinie (_) hatten
aber das ist selten, das kann ich manuell regeln
Johannes
AW: nun dann ...
05.01.2022 16:46:30
neopa
Hallo Johannes,
... nachfolgend mein Formellösungsvorschlag. Nachfolgende Monsterformel in C2 kann man mit Hilfe von benannten (Teil-)Formel noch strukturieren, so dass sie dadurch etwas verständlicher lesbar ist. So würde ich es jedenfalls tun, wenn ich sie anwenden müsste. Hab dies aber hier (noch) nicht getan.
Die Formel müsste und könnte noch etwas erweitert werden, wenn der Datenwert in C8 (mit innen liegenden Ziffern) nicht gefunden werden soll. Momentan sind auch noch Zeichen mit einem ZeichenCODE größer 90 möglich, könnten durch Formelerweiterung auch noch unberücksichtigt bleiben.
Meine Beispieltexte in A3:A12 sind natürlich willkürliche Testtexte. Die Zeichenkette "ABCKCAB" in A9 ist länger als 6 Zeichen und wird geäß Deiner Vorgabe nicht als Ergebniswert ermittelt.
Die Formel C2 ist einfach nach unten kopiert:
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABC
1Text gefunden
298005_theTrendTrader MT4 Balance Forex DailySame EURJPY M5 Leverage100 FixedLots TrendH1 GMT0 EURJPY
3UaUZx2x ABCCBA nZo ABCCBA
4FEDCBA n6Zo FEDCBA
51234BB ECBAGZ ECBAGZ
6a AB1234_DCBBCT_h DCBBCT
7irgendwas_US100 und … US100
81234aAhj45_FE44BA_a FE44BA
9UK1234 ABCKCAB nZo  
10a_F12345 EEEDBA h EEEDBA
11und sonst noch DAX40 DAX40
12AB_ZHJU_alles nix  

ZelleFormel
C2=WENNFEHLER(GLÄTTEN(TEIL(" "&WECHSELN(A2;"_";" ")&" ";AGGREGAT(15;6;ZEILE($1:$999)/(IDENTISCH(TEIL(" "&WECHSELN(A2;"_";" ");ZEILE($1:$999);7);GROSS(TEIL(" "&WECHSELN(A2;"_";" ");ZEILE($1:$999);7))))/(CODE(TEIL(A2;ZEILE($1:$999);1))&gt57)/(CODE(TEIL(A2;ZEILE($6:$999);1))&gt57)/(TEIL(" "&WECHSELN(A2;"_";" ")&" ";ZEILE($8:$999);1)=" ")/(TEIL(" "&WECHSELN(A2;"_";" ")&" ";ZEILE($1:$999);1)=" ");ZEILE($1:$999));8));WENN(ISTZAHL(FINDEN("US100";A2;1));"US100";WENN(ISTZAHL(FINDEN("DAX40";A2;1));"DAX40";"")))
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: nun dann .. Danke.
06.01.2022 10:50:30
Johannes
Ok
danke Werner,
Funktioniert prima, auf Anhieb, wie immer
Werde parallel dazu am WE auch noch die VBA Lösung in Betracht ziehen, wieder eine Lehrstunde in VBA schadet mir nichts.
Merci, ich melde mich die tage auf jeden Fall.
Johannes
AW: bitteschön owT
06.01.2022 11:09:12
neopa
Gruß Werner
.. , - ...
Du hast vollkommen Recht...
04.01.2022 16:28:02
{Boris}
Hi Werner,
...2 Einschränkungen hatte ich ja bereits mitgeteilt. Für genauere Formulierung(en) hast Du aber schon die richtigen Fragen gestellt und wirst dann am Ende sicher eine wirklich runde Lösung präsentieren können.
Für mehr Details habe ich grad keine Zeit - daher ist der OP bei Dir in besten Händen!
VG, Boris
Anzeige
Das von dir Angestrebte liefert flgd Fml, ...
05.01.2022 01:05:25
dir
…Johannes,
die eine eigene Fkt (VBA-basierte UDF) enthält und sowohl das 1. als auch die beiden von dir genannten Sonderkriterien erfüllt resp diese Texte liefert. Dabei handelt es sich um eine singulare MatrixFml, die je nach Xl-Version einen speziellen FmlAbschluss erfordert oder eben nicht (deshalb nur mit führendem + gekennzeichnet):
+GLÄTTEN(TEIL(A1;MAX(VLike(A1;"*"&WAHL({1.2.3};WIEDERHOLEN("[A-Z]";6);"US100";"DAX40")&"*";-1));6))
Voraussetzung ist, dass nur eines der genannten 3 Suchworte pro Text auftritt. Anderenfalls oder falls ein solches Wort mehrfach auftritt, wird wg MAX stets das letzte gefunden.
Morhn, Luc :-?
„Die universelle Befähigung zur Unfähigkeit macht jede menschliche Leistung zu einem unglaublichen Wunder.“ Stapps ironisches Paradoxon
Anzeige
AW: Das von dir Angestrebte liefert flgd Fml, ...
05.01.2022 14:26:25
dir
Danke ich versuchs nachmittags, bin grad unterwegs
Johannes
AW: in text 6 Grossbuchstaben finden
05.01.2022 11:39:06
Piet
Hallo
warum nimmst du nicht eine VBA Lösung mit Makro, Start über einen Button. Mich interessiert nicht ob vor oder nach dem Text ein Leerzeichen steht!
Ich gehe mal davon aus das der Suchtext bereits bekannt ist. Sonst kann man das Makro auf Grossbuchstaben Suche umschreiben. Die Suche dauert nur länger!
In dem kleinen Makro musst du nur den Namen der Suchtabelle, die Suchspalte und Spalte zum auflisten angeben. Im Augenblick steht da Spalte "A" und "B" drin.
Wenn die Zieltabelle zum auflisten eine zweite Tabelle ist muss man den ** markierten Codeteil mit dem Namen der Zieltabelle verwenden. Einfach mal testen ...
mfg Piet
  • 
    Sub Grossbuchstaben_auflisten()
    Dim lz1 As Long, z As Long
    With Worksheets("Suchtabelle")
    'LastZell in Suchspalte ermitteln
    lz1 = .Cells(Rows.Count, "A").End(xlUp).Row
    z = 2   '1.Zeile zum auflisten
    'Schleife um alle inträge zu prüfen
    For Each AC In .Range("A2:A" & lz1)
    Select Case AC.Value
    Case "EURJPY", "XXXYYY", "uuuZZZ"
    'Ergebnis in beliebiger Spalte auflisten (gleiche Sheet!)
    '** Worksheets("Zieltabelle").Cells(z, "B") = AC.Value
    .Cells(z, "B") = AC.Value
    z = z + 1
    End Select
    Next AC
    End Sub
    

  • Anzeige
    AW: in text 6 Grossbuchstaben finden
    05.01.2022 11:46:04
    Piet
    Nachtrag
    US100 und DAX40 kann man auch problemlo finden, einfach so: - Case "EURJPY", "XXXYYY", "US100", "DAX40"
    AW: in text 6 Grossbuchstaben finden
    05.01.2022 14:32:44
    Johannes
    Ok das ist sinnvoll, danke
    Ich hoffe, ich schaffe das heute Abend.
    Bin gerade anderweitig unterwegs.
    Johannes
    AW: in text 6 Grossbuchstaben finden
    05.01.2022 14:29:44
    Johannes
    Danke,
    ich bin in VBA so noch so schlecht, dass ich dem möglichst aus dem Weg gehe,
    aber ich versuche es später.
    Johannes
    Anderer Ansatz (Wexelkursrelationen)
    09.01.2022 15:49:52
    lupo1
    Schreibe alle denkbaren Währungspaare in eine Tabelle und suche in Deinem String danach:
    EURJPY
    JPYEUR
    USDJPY
    JPYUSD
    EURUSD
    USDEUR
    und so weiter ...
    Dort, wo kein Paar gefunden wird, steht dann evtl. ein Exot, den Du noch mit in die Tabelle aufnehmen kannst.
    Anzeige
    AW: Anderer Ansatz (Wexelkursrelationen)
    10.01.2022 17:14:16
    ChrisL
    Hi
    Zufällig hatte ich eine Währungsliste rumliegen (165 ISO-Kürzel) und dachte ich kombiniere die mal schnell spasseshalber in PQ. Das Ergebnis konnte ich infolge Dateigrösse nicht hochladen, darum nur als Datenverbindung.
    https://www.herber.de/bbs/user/150316.xlsx
    Ich komme auf 54'120 Kombinationen, ohne doppelte (z.B. EUREUR).
    =(Anzahl*Anzahl-Anzahl)*2
    Wenn es natürlich nur ein paar Standardwährungen sind, dann reduzieren sich die Anzahl Kombis deutlich.
    Evtl. ist die Währungsliste im Anhang für jemanden nützlich. Die Aktualität der Liste kann ich nicht garantieren, aber die üblichen Währungen sollten korrekt/vollständig sein.
    cu
    Chris
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige