Anzeige
Archiv - Navigation
1664to1668
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

VBA: Verkettung von Schleifen

VBA: Verkettung von Schleifen
28.12.2018 21:54:59
Schleifen
Guten Abend zusammen,
ich sitze gerade mit Kommilitoninnen an einem VBA-Projekt "Kino".
Folgendes Problem haben wir:
Wir haben in unserer Tabelle Sitzplan einen fiktiven Kinosaal aufgebaut über die Range ("B4:K9"). Die einzelnen Zellen sind mit den Werten B1 bis B40 definiert. Hier soll farblich dargestellt werden, welche Plätze belegt (rot) und frei (grün) sind.
Dafür benötigen wir die Tabelle Ticket. Die AU_ID beschreibt welcher Film in welchem Kinosaal zu welcher Uhrzeit und Datum
ausgestrahlt wird. In der Tabelle Ticket, sind der AU_ID (Spalte D) die belegten Sitzplätze (Spalte C) zugeordnet. Diese zugeordneten definierten Sitzplätze müssen nun mit der Tabelle Sitzplan verglichen werden und dementsprechend in der Tabelle Sitzplan als belegt (rot) markiert werden.
Hat jemand eine Idee, wie wir die Schleifen verketten müssen?
Vielen Dank und einen schönen Abend
Sarah

36
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 00:16:45
Schleifen
Hallo Sarah
lade bitte eine Beispieldatei hoch wie euer Plan und die Sitzplatzbelegung genau aussieht und gebt uns eine haendische Lösung vor was gewünscht ist. Dann sehen wir weiter. So ohne jede Zeilen und Spalten Angaben, ohne zu wissen wie eure Datei aussieht, ist das nur "heiteres Ratespiel" - Du kannst ja auch kein Haus bauen lassen ohne eine Bauzeichnung mit allen Details!
Ratespiele sind schön zu Silvester um fröhlich lachend ins neue Jahr zu kommen ... Guten Rutsch ....
mfg Piet
AW: VBA: Verkettung von Schleifen
29.12.2018 00:36:50
Schleifen
Hallo Piet,
vielen Dank für deine Antwort.
Wir sitzen gerade an folgendem Code fest:
'Set Tabelle Ticket
Sub Ticket()
Dim Ticket As Workbook
Dim Sitzplan As Workbook
Dim Zelle As Range
Set Ticket = Workbooks.Open("C:\Users\Sarah\Dropbox\BA SCM\Tabellen\Ticket.xlsx")
'Werte auslesen und übertraggen --> Zuordnung muss über eine ID erfolgen !!!!!
For Each Zelle In Range("B8, C5, C6, C7, C8, D4, D5, D6, D7, D8, E4, E5, E6, E7, E8, F4, F5, F6, F7, F8, G4, G5, G6, G7, G8," & _
"H4, H5, H6, H7, H8, I4, I5, I6, I7, I8, J5, J6, J7, J8, K8")
If Ticket.Range = ("B5") and if Sitzplan.Range = (("B_Kinosaal") = "B5) = Then
Zelle.Interior.Color = 255
Else: Zelle.Interior.Color = 2750323
End If
Next Zelle
~f~
In der Tabelle Ticket sind alle bereis verkauften Sitzplätze dokumentiert. Wir wollen einen Abgleich durchführen, indem z. B. der Sitzplatz B5 in dem Sitzplan rot markiert werden muss.
Aber der Sitzplatz B5 kann häufiger Auftreten, da ein Sitzplatz nicht nur einmal verwendet wird (TI_ID und/Oder AU_ID sind einmalig).
Dir auch einen guten Rutsch :)
Und schon mal vielen Dank für deine Unterstützung.
VG Sarah
~f~
https://www.herber.de/bbs/user/126361.xlsm
https://www.herber.de/bbs/user/126362.xlsx
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 00:48:26
Schleifen
Wenn du auch noch erklären könntest, was
TI_ID AU_ID SI_ID BE_ID PR_ID überhaupt bedeuten?
AW: VBA: Verkettung von Schleifen
29.12.2018 01:09:09
Schleifen
Aber klar:
TI_ID = Ticket ID
AU_ID = Ausstrahlungs ID
SI_ID = Sitzplatz ID
BE_ID= Besucher ID
PR_ID = Preis ID
Das sind vorrangig Primärschlüssel von den jeweiligen Tabellen (Ticket, Ausstrahlung, Sitzplatz, Besucher und Preis).
Über die IDS gelangen wir an weitere Informationen.
Benötigst du noch genauere Angaben über die jeweiligen Tabellen ?
Danke :)
Sarah
AW: VBA: Verkettung von Schleifen
29.12.2018 01:12:30
Schleifen
Wie - gibt es noch mehr als die beiden Geposteten?
Ausstrahlungs ID steht wohl für die Vorstellung?
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 09:47:11
Schleifen
Hi Onur,
wow, das sieht schon mal sehr gut aus. Sehr gute Arbeit!
Wir sitzen schon seit einer Weile an deinem Code, um diesen zu verstehen und auf unsere Datei anzuwenden.
Wir haben noch ein paar Unklarheiten, vielleicht kannst du uns hierbei Licht ins Dunkle bringen ;)
- Wenn wir deine Makros über unsere Datei laufen lassen, erhalten wir ein anderes Ergebnis, als in "deiner" Tabelle. In deiner Tabelle funktioniert alles super, wenn ich die AU_ID ändere...aber bei unsere Tabelle ist alles leider zerschossen
- Die Makros haben wir uns anschließend einzeln angeschaut und versucht zu verstehen.
Was wir verstehen ist, dass wir unsere eigene Tabelle "Ausstrahlung" hinzufügen (Daten aktualisieren) und die Daten mit Hilfe von S-Verweisen abgefragt werden.
Beim LookUp-Befehl ist uns noch nicht ganz klar, wie dieser Arbeitet, da nicht ganz die richtigen Tabellen und Spalten angesprochen werden - aber in deiner Tabelle funktioniert es trotzdem...
Würdest du uns das bitte nochmal an einem Beispiel erklären?
Ich hänge dir mal noch unsere Tabelle Ausstrahlung bei, vielleicht hilft das für das Beispiel.
https://www.herber.de/bbs/user/126369.xlsx
Vielen lieben Dank für deine Hilfe!
Sarah
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 09:47:12
Schleifen
Hi Onur,
wow, das sieht schon mal sehr gut aus. Sehr gute Arbeit!
Wir sitzen schon seit einer Weile an deinem Code, um diesen zu verstehen und auf unsere Datei anzuwenden.
Wir haben noch ein paar Unklarheiten, vielleicht kannst du uns hierbei Licht ins Dunkle bringen ;)
- Wenn wir deine Makros über unsere Datei laufen lassen, erhalten wir ein anderes Ergebnis, als in "deiner" Tabelle. In deiner Tabelle funktioniert alles super, wenn ich die AU_ID ändere...aber bei unsere Tabelle ist alles leider zerschossen
- Die Makros haben wir uns anschließend einzeln angeschaut und versucht zu verstehen.
Was wir verstehen ist, dass wir unsere eigene Tabelle "Ausstrahlung" hinzufügen (Daten aktualisieren) und die Daten mit Hilfe von S-Verweisen abgefragt werden.
Beim LookUp-Befehl ist uns noch nicht ganz klar, wie dieser Arbeitet, da nicht ganz die richtigen Tabellen und Spalten angesprochen werden - aber in deiner Tabelle funktioniert es trotzdem...
Würdest du uns das bitte nochmal an einem Beispiel erklären?
Ich hänge dir mal noch unsere Tabelle Ausstrahlung bei, vielleicht hilft das für das Beispiel.
https://www.herber.de/bbs/user/126369.xlsx
Vielen lieben Dank für deine Hilfe!
Sarah
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 10:17:45
Schleifen
Edit
Hi Onur,
wir sind inzwischen schon etwas weiter gekommen.
Uns ist nur noch nicht ganz klar, wo die Logik steckt, mit der die Zellen eingefärbt werden. Wir finden in den Makros keine Querverweise oder sonstiges.
Wenn wir die Makros abspielen, ist die Tabelle bzw. der Sitzplan leider immer noch zerschossen...da stimmt noch irgendwas nicht.
Würdest du uns dies bitte an einem Beispiel erklären? :)
Vielen lieben Dank
Sarah
AW: VBA: Verkettung von Schleifen
29.12.2018 11:15:15
Schleifen
Hallo Sarah,
welche Makros denn - die waren doch in deiner hochgeladenen Beispieldatei schon alle so drin, von Onur ist da kein Makro dabei.
Das wurde von Onur doch mit einer bedingten Formatierung im Blatt des Sitzplanes verwirklicht.
Schau dir in dem Blatt doch mal die Bereichsnamen und die bedingte Formatierung an.
Gruß Werner
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 11:25:33
Schleifen
Hallo Werner,
oh ja du hast recht - ich glaube wir saßen einfach schon zu lange an dieser Datei :D
Das waren mal Test-Makros, an die wir nicht mehr gedacht haben (von denen ich geschrieben haben).
Das mit der bedingten Formatierung stimmt. Problem ist nur, dass wir das so nicht machen dürfen. Wir Müssen alles über VBA Programmieren :( :(. Das heißt wir müssen irgendwie Schleifen programmieren oder?
LG Sarah
AW: VBA: Verkettung von Schleifen
29.12.2018 16:34:27
Schleifen
Hallo Werner,
ja genau sowas in der Art.
Die Auflösung von Onur finde ich etwas besser, da in der Excel die AU_ID jederzeit händisch eingegeben werden kann und sich die Zellen damit automatisch einfärben...
Ich habe eben bei Onur schon eine Rückantwort geschrieben... deine Unterstützung ist natürlich auch herzlich Willkommen....
LG Sarah
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 18:25:10
Schleifen
Hallo Sarah,
na ja, bei meinem Code werden die Zellen gefärbt, sobald die AU_ID in Tabelle1 geändert wird.
Wenn du das so haben willst, dass auf dem Blatt "Black_Panter" ein Eingabefeld für die AU_ID sein soll, das die Zellen bei Eingabe färben soll, dann halt so.
https://www.herber.de/bbs/user/126386.xlsm
Gruß Werner
AW: VBA: Verkettung von Schleifen
29.12.2018 13:25:21
Schleifen
"Das mit der bedingten Formatierung stimmt. Problem ist nur, dass wir das so nicht machen dürfen." - Das hast du vorher aber nicht erwähnt.
https://www.herber.de/bbs/user/126377.xlsm
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 16:29:53
Schleifen
Sorry Onur, ich war der Meinung, wenn ich im Betreff VBA reinschreibe, das es dann klar wäre ... habe wahrscheinlich zu viel gedacht.... Tut mir echt leid.
Ich habe mir deinen Code angeschaut.
Irgendwie funktioniert es noch nicht so ganz (die Logik verstehe ich immerhin ) - ist es egal ob ich den Code in das Modul oder in die Tabelle schreibe?
Ich sehe, dass Excel rechnet - aber es färbt sich nichts ein...
Und wie hast du L1 und M1 (Vorstellung/AU_ID) erstellt? Ich glaube, dass ich dies für den Code benötige oder? Bzw. genau so möchte ich es haben :)))
Sorry, meine Kommilitoninnen und ich sind Anfänger, und haben nicht immer den Durchblick...
LG Sarah
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 16:39:11
Schleifen
"Und wie hast du L1 und M1 (Vorstellung/AU_ID) erstellt?" - Erstellt? Einfach hineingeschrieben.
Irgendwo muss ja stehen, welche Vorstellung gemeint ist, und deswegen ist das auch nötig.
Der code in "Black_Panter" muss auch bei dir in "Black_Panter" stehen, weil er auf Änderung von M1 reagiert.
Der Code von "Tabelle1 (2)" muss in "Tabelle1 (2)" stehen, weil der reagiert, wenn du da neue Datensätze einträgst/änderst.
AW: VBA: Verkettung von Schleifen
29.12.2018 17:01:55
Schleifen
Ich habe nun alles wie du gesagt hast gemacht.
Ich checks aber im Moment nicht, warum es sich bei mir nicht einfärbt...Muss ich irgendwas noch verbinden?
AW: VBA: Verkettung von Schleifen
29.12.2018 17:14:10
Schleifen
Poste mal
Anzeige
AW: VBA: Verkettung von Schleifen
29.12.2018 17:39:34
Schleifen
Würdest du mir bitte erklären wie du das gemacht hast? Damit ich zukünftig weiß, wo mein Problem ist? :) Danke
AW: VBA: Verkettung von Schleifen
29.12.2018 17:41:39
Schleifen
Bei mir waren Spalte B und C vertauscht gewesen, der Code hat in B nach AU_ID gesucht und in C nach Sitzplatz, habe das korrigiert.
AW: VBA: Verkettung von Schleifen
29.12.2018 17:46:31
Schleifen
ahh ok.
Muss ich aber noch was beim Ausführen beachten?
Ich habe alles in meiner original Tabellen angepasst und alles einzeln ausgeführt...aber es tut sich nichts :(
AW: VBA: Verkettung von Schleifen
29.12.2018 17:48:47
Schleifen
Was für Original-Tabellen?
Ich dachte, das wäre sie gewesen.
AW: VBA: Verkettung von Schleifen
29.12.2018 17:50:02
Schleifen
ja natürlich sind das die Original Tabellen... Ich meinte meine "original Datei".
Ich möchte das ja nicht alles so "blind" übernehmen, sondern verstehen...
AW: VBA: Verkettung von Schleifen
29.12.2018 17:51:19
Schleifen
Wie sieht denn jetzt die Original-Datei aus?
AW: VBA: Verkettung von Schleifen
29.12.2018 17:53:34
Schleifen
Das ist genau die Datei die ich dir zur Verfügung gestellt habe.
Ich wollte deine bzw. meine veränderte Datei nicht einfach umbenennen sondern deine Codes in die bestehende Datei einfügen und verstehen.
Es passt jetzt auch alles so. Ich verstehe nur nicht, was mein Fehler jetzt noch ist... muss irgendwie beim Ausführen liegen...
AW: VBA: Verkettung von Schleifen
29.12.2018 17:54:18
Schleifen
Dann poste sie mal.
AW: VBA: Verkettung von Schleifen
29.12.2018 19:04:20
Schleifen
oh ja du hast Recht...was hab ich da kopiert -.-
Aber geil, es funktioniert jetzt endlich.
Vielen vielen Dank und einen schönen Abend Onur ;)
Dann bleibt mir ja nur noch...
29.12.2018 20:16:35
Werner
Hallo Sarah,
... mich fürs Ignorieren recht herzlich zu bedanken.
Gruß Werner
AW: VBA: Verkettung von Schleifen
29.12.2018 18:24:46
Schleifen
Hallo Sarah
wenn etwas nicht klappt bin ich immer neugierig - Warum NICHT?
Schau dir die Beispiel Datei bitte an, so teste ich Programme die nicht funktionieren. Per Button und mit MsgBoxen, die mir aktuelle Werte anzeigen. - Oder nicht, wenn es keine gibt!! - Grundwissen für VBA Anfaenger und Hobby Amateure.
Als Anfaengerinnen wollt ihr VBA lernen, dann viel Spass beim suchen. Aşls erstes viel mir auf das fast NICHTS eingefaerbt wird. Nur bei Nummer 11 vier Sitze. Der Rest ist Jenntte! Das machte mich stutzig. - Das Makro laeuft, aber irgenwas konnte da ja nicht stimmen!! Als naechstes fiel mir auf das zwei Workbook Namen "#REF" Error hatten, den Bezug verloren haben. Das hatte aber keinen Einfluss. Dann kopierte ich mir die AU_ID und SI-ID Nummern und sortierte sie in einer Hilfsspalte. Welch Überraschung, sah sofort den Fehler!
Schaut euch meine Suchaktion in Ruhe an. Was faellt euch auf?
Der Bestuhlungs Text in der SI-ID Reihe stimmt nicht mit der Tabelle "Black Panter" überein! Da steht immer B1 bis B40!
Das gibt es in der SI_ID Spalte aber nur vier mal! Wie will sein Programm dann die richtige Farbe zuweisen? -
Die Tabelle mit den Stuhl Nummern müsst ihr selbst erst mal richtig stellen.
Ich hoffe das hilft euch weiter, ein frohes neues Jahr .....
mfg Piet
https://www.herber.de/bbs/user/126385.xlsm
AW: VBA: Verkettung von Schleifen
29.12.2018 18:43:07
Schleifen
Hallo an Alle ....
das war ein Super langer Thread, viele Rückfragen Würde mich echt freuen wenn er jetzt endlich zu Ende ist!
Ich wünsche allen ein frohes glückliches neues jahr ... - Wir sehen uns
mfg Piet
AW: VBA: Verkettung von Schleifen
02.01.2019 09:28:04
Schleifen
@ Piet:
Danke für deine Unterstützung, der Code stand aber schon und es funktioniert auch meines Erachtens. D.h. der Threat ist seit Samstagabend fertig ;)
Die Sitzplatz Tabelle ist schon richtig, weil ich habe ja mehrere Tickets zu verschiedenen Filme und Kinosälen - und es gibt nur eine zentrale Tabelle hierfür.
@ Werner:
Sorry Werner, dass war keine Absicht.
Deine Antwort ist leider irgendwie untergegangen :( bzw. habe ich nicht gesehen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige