Collapse column

Autor Thema: Office 2010: TextToColumns von Rechts; AD-Pfad auswerten  (Gelesen 2886 mal)

Offline juchem

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« am: April 04, 2015, 01:08:09 Vormittag »
Hi @ all,

ich bin frustiert! Konnte mir bisher eigentlich immer mit Recherche im Netz helfen. Nach einigen Stunden gebe ich aber die Suche erstmal auf und hoffe auf Eure Hilfe!

Ich habe einen Export aus einem AD (ca. 1500 Datensätze). Dabei habe ich auch den Parent Container nach folgendem Muster:

Users/Department/TownABC/Test/Objects/google.com
external/Users/Department/TownXY/Test/Objects/google.com
int/Users/Department/TownXY/Test/Objects/google.com

Ich sucher jetzt eine Fomel, die mir alle Town...-Einträge in eine Spalte aufteilt.
Die einzige Konstante, die ich aktuell sehe ist, dass ich von rechts kommend alles vor "/Test/Objects/google.com" bis zum nächsten / benötige. Aber ich wüsste aktuell nicht wie ich das hinbekommen sollte.

Ich hoffe ihr könnt mir helfen. Ich brauche jetzt erstmal etwas Schlaf!

Danke Euch!

VG
Juchem

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #1 am: April 04, 2015, 01:39:50 Vormittag »
Moin,

ich habe zwar keine Ahnung, was ein AD-Pfad ist aber eine mögliche Lösung. Verwende diese benutzerdefinierte Funktion:
Option Explicit

Function TheTown(c As Range) As String
    Dim aZeile
    Dim i As Integer
   
    aZeile = Split(c, "/")
    For i = 0 To UBound(aZeile)
        If LCase(aZeile(i)) = "test" Then
            If i > 0 Then
                TheTown = aZeile(i - 1)
            Else
                TheTown = aZeile(0)
            End If
            Exit Function
        End If
    Next i
    TheTown = ""
End Function

Wie du eine UDF in die Datei integrierst, kannst du bei Excel-ist-sexy erfahren.
Anwendung:

=TheTown(A1)
wenn in A1 der "Bandwurm" steht.
Gruß
Günther

Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #2 am: April 04, 2015, 09:13:40 Vormittag »
Hallo,

Das Wort "Department" scheint auch eine Konstante zu sein, weshalb Du diese Formel verwenden könntest:

Code: Visual Basic
  1. =TEIL(A1;FINDEN("Department"&"/";A1)+LÄNGE("Department")+1;
  2.  FINDEN("/";A1;FINDEN("Department"&"/";A1)+LÄNGE("Department")+1)-
  3.  FINDEN("Department"&"/";A1)-LÄNGE("Department")-1)

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Offline juchem

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #3 am: April 06, 2015, 12:52:55 Nachmittag »
Hallo Günther,
hallo maninweb,

vielen Dank für Eure Hilfe! Leider komme ich wegen Ostern erst jetzt dazu zu antworten. Ich hoffe ihr hattet alle ein schönes Wochenende!
Ein AD-Pfad ist ist der Pfad zu den entsprechenden Obejkten im Active Directory (Microsofts Userverwaltung z.B. in Firmen o.ä.). Von daher entsprechen die genannten Pfade auch nicht der genauen Situation und ich möchte auch ungerne firmeninternen Daten ins Internet stellen. Ich hoffe ihr könnte das verstehen.
Wie so häufig in solchen Foren hätte ich auch wieder etwas mehr Infos geben müssen, damit eure Gedanken nicht in die falsche Richtung gehen.  :-\

Hier noch mal die Rohdaten in anderer Schreibweise mit etwas mehr Infos:

Users/Department/TownABC/Land01/Objects/google.com
external/Users/Department/TownXY/Land23/Objects/google.com
int/Users/Department/TownXY/Land23/Objects/google.com

Die Bezeichnungen Department, TownABC und Land01 sind dabei nur stellvertretend für die einzelnen Bezeichnungen und sind somit "quasi" immer ein anderer Wert. Daher kann ich mich leider weder an dem Wort Departmentnoch an dem Wort Test orientieren.  :'(

Aus meiner Sicht kann ich also nur etwas machen wie z.B. eine Funktion, die mir den Wert zwischen dem 3. und dem 4. "/" von rechts kommend ausgibt.

Oder eine Funktion, die Werte zwischen den "/" tauscht, so dass die Zeile google.com/Objects/Land01/TownABC/Department/Users aussehen würde und dann ein "Text to columns" durchführt.

Ich danke Euch für Eure Hilfe!!!

VG
Juchem



Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #4 am: April 06, 2015, 13:43:17 Nachmittag »
Hallo Juchem,

dann probiere es mal mit der Formel hier (vorausgesetzt, das $-Zeichen kommt nie im Pfad vor):
Code: Visual Basic
  1. =TEIL(A1;FINDEN("$";WECHSELN(A1;"/";"$";LÄNGE(WECHSELN(A1;"/";"$"))-LÄNGE(WECHSELN(A1;"/";""))-3))+1;FINDEN("/";WECHSELN(A1;"/";"$";LÄNGE(WECHSELN(A1;"/";"$"))-LÄNGE(WECHSELN(A1;"/";""))-3);FINDEN("$";WECHSELN(A1;"/";"$";LÄNGE(WECHSELN(A1;"/";"$"))-LÄNGE(WECHSELN(A1;"/";""))-3))+1)-FINDEN("$";WECHSELN(A1;"/";"$";LÄNGE(WECHSELN(A1;"/";"$"))-LÄNGE(WECHSELN(A1;"/";""))-3))-1)

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline juchem

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #5 am: April 06, 2015, 14:51:36 Nachmittag »
Hi Maninweb,

Super!!!!! Vielen Dank!!!! Es funktioniert.

Ich musste nur noch die englischen Begriffe nehmen und habe die gleiche Formel auch genutzt, um mir andere Teile des Pfades ausgeben zu lassen. Dazu musste nur die -3 entsprechend angepasst werden (nur zur Infos für Leute, die mal über dieses Thema stolpern sollten!).

Viele Grüße und allen noch einen schönen Feiertag!

Juchem

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw:Office 2010: TextToColumns von Rechts; AD-Pfad auswerten
« Antwort #6 am: April 06, 2015, 22:35:45 Nachmittag »
Moin,

an ActiveDirectory hätte ich auch denken können  :(.
Für alle, die (wie ich auch) Formeln mit mehr als 50 Zeichen nicht so optimal finden, hier noch eine UDF, die das auch leistet:

Function FindTheTown(c As Range) As String
    Dim aCellSplit
    aCellSplit = Split(c, "/")
    FindTheTown = aCellSplit(UBound(aCellSplit) - 3)
End Function

Dank der klareren Definition ist der Code auch etwas kürzer geraten.  ;)
Gruß
Günther

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.