Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
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

Spalten durchsuchen - Schleifen

Spalten durchsuchen - Schleifen
03.01.2024 15:40:02
K.M.
Hallo,

da mir hier schon einmal hervorragend geholfen wurde, bitte ich erneut um "Denkanstoß".

Ich weiß, dass ich vermutlich nur den ein oder anderen Denkfehler begehe.

Ausgangssituation:

- 2 Excel Arbeitsblätter
Das erste mit 3 gefüllten Spalten (A,B,C)
Wichtige Bereiche: Zeilen 2 - 54, in diesen Zellen stehen in Spalte B Dienstarten und ab Zeile 55 bis Ende, dort stehen Kostenstellen, ebenfalls in Spalte B
In Spalte A stehen 'OrgaID's'
In Spalte C 'übergeordnete Orga ID's'
Das zweite ist gefüllt mit Daten, die für eine Userform benötigt werden

- 1 Userform
Hier werden 2 Werte eingegeben: Dienstart über eine Combobox (Daten stehen in m Arbeitsblatt 'Daten')
Kostenstelle: wird in eine Textbox eingegeben (7 stellig)
Beim Klick auf einen Commandbutton soll folgendes geschehen:

Variablen:
K = Kostenstelle
D = Dienstart
L = Orga ID (Spalte A)
M = übergeordnete Orga ID (Spalte C)

- Durchsuche Spalte B nach dem Inhalt der Textbox (Kostenstelle)
- Wenn Kostenstelle gefunden, dann nimm den Wert, der in derselben Zeile in Spalte A steht und fülle damit L
- Suche nun in Spalte B ab Zeile 2 nach der Variablen D und überprüfe ob die Variable L in der gefundenen Zeile mit dem Wert der Spalte A in derselben Zeile übereinstimmt. Wenn ja, dann fülle Variable M mit dem Wert aus Spalte C derselben Zeile und gib es in der Userform in einem Textfeld aus und beende alles. Wenn nicht, dann nimm die nächste Zeile (ab 55) mit der Variablen K und such dann wieder ab Zeile 2.

Ich hoffe das ist so einigermassen verständlich.
Kostenstellen ab Zeile 55 kommen mehrfach vor, aber jede hat einen anderen Wert in Spalte A

Mein bisheriger, kläglicher Versuch:

Dim D As String ' D = Dienstart aus Dropdown

Dim K As String ' K = Kostenstelle
Dim L As String ' L = Organisationsstruktur-Identifizierung, Wert in Spalte A
Dim M As String ' M = Übergeordnete Organisationsstruktur-Identifizierung, Wert in Spalte C
Dim O As Integer ' O = Orga ID, die herausgesucht wird und am Ende als Ergebnis angezeigt
Dim iZaehler, jZaehler As Long

'Variablen werden gefüllt
D = ComboBox1.Value 'Dienstart
K = TextBox2.Value 'Kostenstelle

For iZaehler = 55 To Cells(Rows.Count, 2).End(xlUp).Row 'Spalte B beginnt mit Zeile 55 und hier wird bei der ersten letzen Zelle das Ende "markiert"
If Cells(iZaehler, 2).Value = K Then 'Spalte B nach Kostenstelle durchsuchen
L = Cells(iZaehler, 1) 'hier ist die erste Übergeordnete Organisationssruktur-Ebene ID gespeichert - Wert aus Spalte C in Variable L speichern

For jZaehler = 2 To 54
N = Cells(jZaehler, 2).Value
If Cells(jZaehler, 2).Value = D And Cells(jZaehler, 1).Value = L Then
M = Cells(jZaehler, 3).Value
TextBox3.Value = M


Exit For
End If
Next
Exit For
End If
Next

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten durchsuchen - Schleifen
03.01.2024 16:25:42
Oberschlumpf
Hi,

du hast dir jetzt so viel Mühe gemacht, alles sehr genau beschrieben, auch - nach deiner Meinung - wichtigen VBA-Code gezeigt...

Und trotzdem wird es "nur damit" schwieriger sein, dir helfen zu können, als wenn du uns per Upload eine Bsp-Datei zeigen würdest, die genau in den von dir beschriebenen Zeilen/Spalten genügend Bsp-Daten enthält.

Mit (d)einer Datei könnten wir wirklich sehen, was du meinst.
Mit (d)einer Datei könnten wir auch testen, ob unsere Lösungsideen überhaupt richtig sind.

Ciao
Thorsten
AW: Spalten durchsuchen - Schleifen
03.01.2024 16:26:51
Uduuh
Hallo,
das sieht nach einer recht wirren (unsinnigen) Datenstruktur aus. Insbesondere und ab Zeile 55 bis Ende, dort stehen Kostenstellen, ebenfalls in Spalte B
Das sollte man imho in eine Tabelle mit den Spalten 'Kostenstelle' und 'OgaID' verlagern. Irgendwann kommt was hinzu und dann fängst du an, alles zu ändern.

Eine Beispieldatei wäre hilfreich.

Gruß aus'm Pott
Udo
Anzeige
AW: Spalten durchsuchen - Schleifen
04.01.2024 08:09:49
K.M.
Hallo und Danke für die Antworten,

ja, es ist sehr verwirrend alles das stimmt. Die Daten kommen jedoch aus einem Export eines anderes Programms und liegen genau so vor, wie sie sind.

Ziel ist es hier die übergeordnete ID automatisiert herauszubekommen - bisher wird tatsächlich händisch danach gesucht, um sie anschließend in eine weitere (externe) Tabelle einzugeben.

Ich hänge mal die Datei hier dran (ohne VBA Code). Wäre wirklich super wenn mir hier jemand auf die Sprünge helfen kann.

https://www.herber.de/bbs/user/165817.xlsx
Anzeige
AW: Spalten durchsuchen - Schleifen
05.01.2024 16:44:56
Oberschlumpf
Hi

echt jetzt??!!??

Du möchtest eine Userform-Lösung, zeigst aber nich mal deinen Code IN der Datei...und noch schlimmer...in deiner Datei ist nicht mal ein Userform enthalten?!
Das ist Problem 1.

Ok, hab ich mir gedacht, n Userform mit 1x Combo, 2x Txt krieg auch ich noch hin...also hab ich angefangen...bis hierhin bin ich gekommen:
https://www.herber.de/bbs/user/165910.xlsm

Und ich werde NICHT weiterhelfen!
Warum?

Deine Aufgabenstellung (Wunschliste) und die von dir gezeigte Bsp-Datei passen - nicht - zusammen!

Wie du siehst, hab ich den Inhalt deiner Export-Tabelle etwas "umgestellt" - ich hab alle Zeilen nach Spalte A sortiert, weil ich ja wissen musste, welche Orga ID ist sowohl in Kostenstelle UND Dienstart die gleiche?

Denn du möchtest ja...
1. such in Spalte B, ab Zeile 55, nach Kostenstelle
2. wenn gefunden, "merk" dir in Variable L die Orga ID aus der selben Zeile aus Spalte A
3. nun such in Spalte B, ab Zeile 2 bis Zeile 54, nach Dienstart UND! in Spalte A nach der zuvor gefundenen Orga ID

...ABER AB ZEILE 2 BIS 54 GIBT ES KEINE ORGA ID, DIE AUCH IN DEN ZEILEN AB 55 ENTHALTEN SIND!!!!

Bitte WIE sollen wir dir hier helfen können????
Ich bin raus, weil...du hast dir einfach zu wenig Mühe gegeben.

Ciao + weiter viel Erfolg
Thorsten
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige