ole: textformel

moinmoin

gibt es eine möglichkeit via einer funktion excel folgendes zu sagen:

nimm denn text rechts vom letzten punkt in zellle XY ?`

beispiel:

ursprung: blabla.blubblub.blib.nase
ergebniss: nase

die anzahl der punkte und der textstrings recht jeweils von 1-x

danke im vorraus :-)

alles liebe
ole
(8-)>

  1. moinmoin

    gibt es eine möglichkeit via einer funktion excel folgendes zu sagen:

    nimm denn text rechts vom letzten punkt in zellle XY ?`

    beispiel:

    ursprung: blabla.blubblub.blib.nase

    Einfach z.B. "=RECHTS(A1;4)" wenn Du feste Zeichenfolgen hast, bei variablen Zf. mußt ein bisschen mit den Funktionen "Links", "Zeichenlänge" und "Rechts" rumspielen

    ergebniss: nase

    die anzahl der punkte und der textstrings recht jeweils von 1-x

    danke im vorraus :-)

    alles liebe
    ole
    (8-)>

    Gruß Stephan

    1. hi Stephan

      die idee hatte ich auch schon, nur leider handelt es sich bei den textstings um newsgroupnamen, daher ist es für mich nicht möglich solch eine statische abfrage zu installieren (immerhin habe ich ca 60.000 newsgroups noch zu bearbeiten *seuftz*)

      ich bräuchte da etwas das dynamisch ist ... allerdings ist excel nixht so meine stärke :-(

      trotzdem danke :-)

      alles liebe
      ole
      (8-)>

      1. hallo,

        dann schick mir mal ne Beispiel Datei..... *seufz*!

        Guck dann mal was ich für Dich tun kann.......ok?

        Gruß Stephan

  2. Hallo Ole,

    also ne Standard-Formel gibt es dafür nicht, etwas umständlich geht es aber trotzdem:
    Wenn die einzelnen Werte in Tabelle1 alle untereinander stehen, kannst Du mit der Funktion Daten -> Text in Spalten und mit einem Punkt als Trennzeichen die einzelnen Textbausteine zwischen den Punkten in einzelne Zellen schreiben. Wenn Du das gemacht hast, nimmst Du ein neues Blatt und schreibst in A1:
    =WENN(Tabelle1!B1="";Tabelle1!A1;"")
    Dann kopierst Du das in alle anderen Zellen und ersetzt noch mit Bearbeiten -> Ersetzen 0 durch nichts. Jetzt steht in jeder Zeile nur noch der Textbaustein, den Du haben willst. Wie Du die dann in eine Spalte bekommst musst Du noch überlegen, mit VERKETTEN könntest Du es machen, wäre sogar dann recht simpel, wenn die einzelnen Bausteine nicht in unendlich vielen Spalten aufgeteilt sind. Ich glaube, VERKETTEN geht nur mit bis zu 30 einzelnen Zellen, und wenn es sich um Newsgroups handelt, müßte das doch eigentlich reichen, oder?

    Vielleicht gehts noch einfacher, aber mir ist so spontan nicht anderes eingefallen. Excel ist halt nicht für das Suchen von rechts ausgelegt, sondern nur von links...

    Viel Erfolg,
    Ron

    http://www.searchcode.de

  3. moinmoin

    gibt es eine möglichkeit via einer funktion excel folgendes zu sagen:

    nimm denn text rechts vom letzten punkt in zellle XY ?`

    beispiel:

    ursprung: blabla.blubblub.blib.nase
    ergebniss: nase

    die anzahl der punkte und der textstrings recht jeweils von 1-x

    danke im vorraus :-)

    alles liebe
    ole
    (8-)>

    Hi Ole

    Habe von Patrik deinen Hilferuf erhalten! Ich hätte dir auch eine Lösung gebastelt, die ich dir mailen könnte etc. Kannst du mir noch sagen, wieviele Punkte maximal vorkommen? Es ist ein Gebastel und ich würde dir dann sicher gerne erklären, wie das zu bedienen ist.

    Also - so long
    MaTo

    1. hi MaTo

      da es sich um newsgroup-namen handelt reicht die spanne der punkte von 1 (z.B. ".de") bis x (soll angeblich auch welche geben mit über 10 punkten)....es ist also nicht genau zu sagen wieviele punkte maximal vorkommen können, da es ja auch immerwieder neue untergruppen gibt zu den einzelnen themen.
      ein minnimum an punkten könnt ich dir schon verraten, ein maximum allerdings nicht :-(

      alles liebe
      ole
      (8-)>

  4. Moin Ole,

    gibt es eine möglichkeit via einer funktion excel folgendes zu sagen:

    nimm denn text rechts vom letzten punkt in zellle XY ?`

    beispiel:

    ursprung: blabla.blubblub.blib.nase
    ergebniss: nase

    was du brauchst ist eine benutzerdefinierte Funktion mit der Funktionalität "Suchen von rechts".

    Hier ist sie <g>:

    Function SuchenVonRechts(Suchtext, Text As String, erstes_Zeichen As Integer) As Integer
        Dim Pos As Variant
        Dim Gefunden As Integer
        Gefunden = erstes_Zeichen - 1
        On Error Resume Next
        Pos = WorksheetFunction.Search(Suchtext, Text, erstes_Zeichen)
        On Error GoTo 0
        If Pos > 0 Then
            Gefunden = SuchenVonRechts(Suchtext, Text, Pos + 1)
        End If
        SuchenVonRechts = Gefunden
    End Function

    Diese wird dann in der Zelle, in der du die letzten Zeichen haben willst, wie folgt angesprochen:

    =TEIL(A1;SuchenVonRechts(".";A1;1)+1;LÄNGE(A1))

    wobei die A1 natürlich jeweils durch die Zelle zu ersetzen sind, in der der Newsgroup-Name steht.
    Diese Formel brauchst du dann nur noch nach unten zu kopieren & schon bist du fertig...

    Gruß
    Dirk

    PS: Beispieldatei ist per Mail unterwegs!

  5. nochmal hi

    vielen dank für die rege hilfe :-)

    alles liebe
    ole
    (8-)>