Office: (Office 2007) Verschachtelte Suchroutine mit veränderbarem Array

Helfe beim Thema Verschachtelte Suchroutine mit veränderbarem Array in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Gemeinde, ich möchte hier mal ein Problem vorstellen dessen Lösung mir nicht so ganz kommen. Zumindest nicht einfach. Kompliziert habe ich es... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Tuereintreter, 8. Januar 2016.

  1. Verschachtelte Suchroutine mit veränderbarem Array


    Hallo Gemeinde,
    ich möchte hier mal ein Problem vorstellen dessen Lösung mir nicht so ganz kommen. Zumindest nicht einfach. Kompliziert habe ich es schon angegangen. Der Weg gefiel mir aber nicht.
    Ich möchte in VBA ein Programm schreiben, dass verschiedene Schleifen und Verschachtelungen beinhalten wird. Anbei eine Tabelle die als Ausgang angesehen werden kann. Die erste Spalte ist leer und soll später das Ergebnis beinhalten. Spalte 2 beinhaltet nur Kapitel und Spalte 3 die Titel und den Index. Aus Spalte 2 und 3 soll in Spalte 1 eine zusammengesetzte OZ (Ordnungszahl)entstehen die von einem weiteren Programm weiterverarbeitet wird. Hierbei ist der Aufbau der OZ zu beachten. In manchen Kapiteln die länger sind kommt man schon mal in den 3 stelligen Bereich. Das ist aber nicht immer so. Spalte 2 z.B. beinhaltet 1 und Spalte 2 3.9.99. Zusammen ergibt das 1.2.9.99. Die Zahlen werden aber aus rein ästhetischen Gründen immer mindestens zweistellig angezeigt, also 01.02.09.99. Jetzt wäre weitergezählt die nächste Position 01.02.09.100, so muss dann die vorherige OZ und auch alle anderen davor in eine dreistellige Positionszahl geändert werden 01.02.09.099. So muss man sich den ganzen Aufbau in der Datei anschauen und anschließend vorne die richtige OZ reinschreiben. Logisch dass dies von LV zu LV komplett unterschiedlich ist. Weiter gibt es noch Positionen die auf z.B. 16.0 enden und darunter mit 16.1 weitergehen. Die Null war zuvor ein P, dass von einem anderen Makro gesucht wurde und durch 0 ersetzt wurde. Der Text dahinter ist eine Überschrift und keine wirkliche Position. Die Überschrift soll vor die Texte mit anschließenden Bindestrich gestellt werden, die mit der gleichen Zahl, hier also 16, daher kommen und ab 1 weitergehen bis eben 17 kommt. Die Kür wäre einen Stringvergleich durchführen zu lassen um die Gleichheit der Strings festzustellen. Man braucht nicht immer die Überschrift, da der Text schon in den anderen Position vorkommt. Aber ebn nicht immer. Ich habe diverse Suchroutinen die ganz herrlich da funktionieren und ich arbeitete mit verschachtelten For-Next schleifen sowie While und Do-Loop. Die Verschachtelung wird aber zu stramm. Ich baute alles in ein Array, dass dann am Schluss alles einträgt. Es wurde aber zu kompliziert und der Code ist nachher nicht mehr nachvollziehbar und DIM i, j, k, l, m AS Long ist auch der Gau für For Schleifen. Vielleicht jemand eine bessere Idee zur herangehensweise.

    :)
     
    Tuereintreter, 8. Januar 2016
    #1
  2. Gibt es solche Foren auch auf Französisch? Als es noch m.p.d.e (microsoft.public.de.excel) gab, gab es auch ein m.p.f.e. Habt Ihr nach der offiziellen Einstellung keine Nachfolger zu Excel in Eurer Internetlandschaft?
     
  3. Das die Positionen auf Französisch sind ist wohl zweitrangig. Excel kann auch keine andere Sprache als englisch. Und das auch nur interpretiert. Es geht mir um den Aufbau. Es soll mir hier niemand ein fertiges VBA Programm anbieten.
    Wie sieht es mit der Arbeitsgeschwindigkeit aus bei mehreren kleinen Arrays zu einem Großen ?
    Wenn es zu verschachtelt wird, was kann man statt dessen machen ?
    Das Ganze soll mit so wenig Eingriff des Benutzers erfolgen wie möglich
     
    Tuereintreter, 10. Januar 2016
    #3
  4. Verschachtelte Suchroutine mit veränderbarem Array

    Hi Türeintreter,

    offen gestanden verstehe ich nur Bahnhof. Auch Deine Tabelle hilft mir nicht weiter.
    Chapitre Pos
    2 2
    2.1 2.1
    2.1.01 2.1.1
    2.1.01.1 2.1.1.1
    2.1.01.1.001 1
    02.01.07.000 2.1.7


    Mal ist die Anzeige einstellig, dann wieder zweistellig und was das hier:
    betrifft, erschließt sich mir gleich gar nicht.

    Mal so als Gedankenansatz: Weshalb aufwendige Schleifen in Schleifen in Schleifen?
    Schreib Dir 'ne kleine Funktion, die Dir die Spalteninhalte einer Zeile einzeln aufschlüsselt, setz die Spaltenwerte als formatierten String zusammen und lass diesen Wert zurückgeben.
     
  5. ... das dürfte es treffen...
     
  6. Oh xlph das sieht richtig geil aus. Ich werde mich mal da rein lesen und melde mich mal zurück, denn ich muss noch einbauen, dass die OZ von Anfang bis Ende gleich viele Stellen hat und wenigstens zweistellig ist zwischen den Punkten. Dann muss ich später noch einbauen, dass die Positionen mit einer Null am Schluß als Überschrift gewertet wird, verarbeitet wird und dann gelöscht.

    Bis hierhin schon mal Danke. Ich verstehe nicht warum andere in mir immer einen Excel-Meister sehen, wenn ich sehe wie hier kurzer und knackiger Code gepostet wird.
    Wenn du Interesse hast, dann kann ich mal das Ursprungsskript hochladen, denn die hier präsentierte Datei ist nicht die Ausgangsdatei.

    Gruß Tuere
     
    Tuereintreter, 11. Januar 2016
    #6
  7. Ich habe dir eine PN geschickt.
     
Thema:

Verschachtelte Suchroutine mit veränderbarem Array

Die Seite wird geladen...
  1. Verschachtelte Suchroutine mit veränderbarem Array - Similar Threads - Verschachtelte Suchroutine veränderbarem

  2. Problem mit verschachtelter WENN Formel

    in Microsoft Excel Hilfe
    Problem mit verschachtelter WENN Formel: HiHo Ich habe ein Problem mit einer verschachtelten WENN Formel. Zur Erläuterung: D11 ist ein Hover, bei dem für die Abfrage "Arbeitstag" und "Zeitausgleich" relevant sind. C11 ist ein Datum. Es...
  3. Wenn Dann verschachtelt

    in Microsoft Excel Hilfe
    Wenn Dann verschachtelt: Hallo zusammen, ich würde gerne in eine Spalte mit win, loss oder open befüllen. Win wenn die Zelle positiv ist, loss wenn sie negativ ist und open wenn sie genau 0 ist. Mein eigener Versuch...
  4. Filter Funktion verknüpfen, verschachtelten

    in Microsoft Excel Hilfe
    Filter Funktion verknüpfen, verschachtelten: Hi zusammen, kurze Frage kann man die Filter Funktion verknüpfen oder verschachteln? Die Funktion bietet ja 2 Kriterien. Gehen da auch mehr. Habe schon hin und her probiert Danke vorab schon Mal
  5. Alternative für verschachtelte WECHSELN-Funktion

    in Microsoft Excel Hilfe
    Alternative für verschachtelte WECHSELN-Funktion: Servus an alle, vorab ich bin noch nicht sehr tief in der EXCEL Materie deshalb sorry wenn es eine dumme Frage ist. Leider konnte ich weder hier im Forum noch bei Papa Google eine befriedigende...
  6. Verschachtelte Droplisten mit beliebig vielen Ebenen und Kriterien

    in Microsoft Excel Hilfe
    Verschachtelte Droplisten mit beliebig vielen Ebenen und Kriterien: Excel 365; funktionierende Tabelle, welche verschachtelte Droplisten mit beliebig vielen Ebenen und Kriterien ermöglicht. Funktionsweise zwar gegeben, aber nur meinen Fähigkeiten angepasst. Wer...
  7. Werte aus mehreren Tabellen auslesen, die mehrere Kriterien erfüllen

    in Microsoft Excel Hilfe
    Werte aus mehreren Tabellen auslesen, die mehrere Kriterien erfüllen: Ich benötige wieder einmal eure Hilfe, liebe Community, Excel 365; eigentliches Ziel: mehrere Drop-Listen erstellen, deren Auswahl abhängig von der vorherigen ist. Ich habe etliche Versuche...
  8. verschachtelte WENN-Funktion, ODER, SUMME

    in Microsoft Excel Hilfe
    verschachtelte WENN-Funktion, ODER, SUMME: Ich brauche folgende Formel, doch leider bekomme ich es nicht hin: Wenn im Bereich I61 bis I9999 oder im Bereich BC61 bis BC9999 der gleiche Wert wie in Zelle B4 vorkommt, dann sollen die Werte,...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden