MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 06.06.2017, 15:46   #1
jessalyna
Neuer Benutzer
Neuer Benutzer
Standard Frage - Gruppeneinteilung mit Präferenzen

Bei uns werden in den letzten Schultagen diverse Workshops für unsere Schüler angeboten. Dabei darf jeder (ca 180) seine Wünsche / Präferenzen (3 Stück) angeben. Zur Auswahl stehen etwa 12 Workshops, die je nach Angebot entweder von 12 oder 24 Schülern besucht werden können.
zB Schüler 1 nennt Workshops 4,7,9 und wird einem dieser 3 zugeteilt.

Wollte mal fragen, ob Excel (oder ein anderes Programm) das irgendwie mit vlookup einteilen kann, wenn ich Schüler und die 3 Präferenzen in einer Tabelle eingetragen habe.

Damit wäre mir sehr geholfen. Danke im Voraus.

-Jess
jessalyna ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 06.06.2017, 16:01   #2
WS-53
MOF Koryphäe
MOF Koryphäe
Standard

Hallo Jess,

ich denke deine Fragestellung ist noch etwas lückenhaft.

In der Regel wird es ja wohl so sein, dass es Workshops gibt, die viele besuchen wollen und solche, die weniger gefragt sind.

Wenn deine Schülerliste nun alphabetisch sortiert ist und entsprechend der Präferenzen die Kurse zugewiesen werden, dann werden wohl Anton und Anna gemäß Präferenz 1 eingeteilt, aber Veronika und Walter müssen sehen was übrig bleibt.

Insofern wäre es schön, wenn du die die Aufgabenstellung präziser beschreiben könntest. Und was passiert wenn nur eine oder 2 Präferenzen genannt wurde, bzw. wenn auch für die 3. Präferenz schon alle Plätze belegt sind?

Das alles muss ja heute schon irgendwie, wenn auch manuell, geregelt sein.

Somit solltest du es auch beschreiben können.

__________________

VG, WS-53


>>> Ein Spezialist kann nicht viel, dies aber gut. Die Steigerung ist, noch weniger noch besser zu können. Die Krönung ist, nichts zu können, aber darin perfekt zu sein! Es gibt aber auch Naturtalente, die überspringen die Ersten beiden Stufen. <<<

Übrigens, Feedback, egal welcher Art, ist immer hilfreich. Und erledigte Beiträge sollten auch den Status "erledigt" erhalten.
WS-53 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 06.06.2017, 16:26   #3
jessalyna
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Ja natürlich gibt es Workshops, die weniger gefragt sind. Die Kollegen aus dem Vorjahr (die das immer händisch eingeteilt haben) haben deshalb immer versucht, den Workshop mit den wenigsten Nennungen zuerst zu füllen.
Das heißt angenommen Workshop 5 hat überhaupt die wenigsten Nennungen (egal ob Erst-, Zweit-, oder Drittpräferenz), dann wird Workshop 5 als erst gefüllt.

Alle Schüler MÜSSEN 3 Präferenzen angeben.

Bis jetzt sind die Schüler immer in einem von ihnen genannten Workshop gelandet.

Konkrete Aufgabenstellung:
Bei uns an der Schule gibt es 9 Klassen mit zwischen 13 und 22 Kids.
In den letzten Schultagen bieten wir Lehrer jeweils verschiedene Workshops an. Gruppengröße sollte pro Lehrer 12 nicht übersteigen. Da aber manche Lehrer zu zweit einen Workshop anbieten, ergibt sich für manche Workshops eine Maximalgröße von 24.
Alle Schüler aus den 9 Klassen müssen eine Erst-, Zweit- und Drittnennung abgeben, welchen Workshop sie besuchen möchten.

Da die Kollegen dies in den letzten Jahren immer mit ca 100 handgeschriebenen Zettelchen eingeteilt haben, bin ich für dieses Jahr auf der Suche nach einer einfacheren Lösung.

Danke und LG
-Jess
jessalyna ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 06.06.2017, 16:42   #4
lupo1
MOF Koryphäe
MOF Koryphäe
Standard

Völlig unrealistisch:

12 Workshops. 180 Schüler. Ergibt rechnerisch 15 Schüler pro Workshop.

12 oder 24 Schüler pro Workshop sind möglich. Also muss mindestens bzw. genau ein Viertel aller Workshops von 2 Lehrern geführt werden, wobei dann auch die blödesten Workshops voll belegt sind.

Ich würde nun die Schüler ALLE Workshops in eine Präferenzliste von 1 bis 12 eintragen lassen. Nur dann klappt das (garantiert). Sonst nämlich (wahrscheinlich) nicht.

__________________

MfG Lupo - und ein Hallo ebenfalls!
lupo1 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 06.06.2017, 17:27   #5
Oge
MOF Profi
MOF Profi
Standard

Hallo Jess,

wenn deine Beschreibung des bisherigen Verfahrens vollständig ist (und nicht doch noch in einzelnen Fällen nicht beschriebene Anpassungen durchgeführt wurden), kann man es leicht in Excel umsetzen.

Zwei Bemerkungen:

1) Priorität der wenigsten Nennungen:
Ich halte dieses Verfahren nur dann für fair, wenn den Schülern nicht vorgegaukelt wird, dass es eine Hierarchie in ihren Wünschen gibt, da ja eine exotische Drittnennung berücksichtigt wird, auch wenn in dem Workshop der Erstnennung noch Platz ist.

2) Lösbarkeit:
Auch wenn in der Vergangenheit mit diesem Verfahren jedem Schüler ein Workshop aus seinen Wünschen zugeteilt werden konnte, muss das (wie Lupo geschrieben hat) in der Zukunft nicht immer möglich sein.
Vielleicht könnte man schon überlegen wie in diesem Fall der Engpass dargestellt werden soll.

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 07.06.2017, 19:58   #6
Oge
MOF Profi
MOF Profi
Standard

Hallo Jess,

in der Anlage einmal ein Beispiel mit Prioritäten in den Schülerwünschen.

a) Verfahren:
1) allgemein
Für jede Ebene der Wünsche wird für jeden Workshop nachgesehen wieviele Schüler, die auf den vorherigen Ebenen noch nicht berücksichtigt wurden, auf der aktuellen Ebene diesen Workshop gewählt haben.
Ist die Zahl grösser als die Anzahl der Restplätze in diesem Workshop, wird die Liste über Zufallszahlen reduziert.
Die restlichen Schüler werden dem Workshop zugeordnet.
2) nicht immer lösbar
Diese Verfahren führt nicht immer zu einer Lösung, in der alle Schüler berücksichtigt werden. Das kann daran liegen, dass es für dieses Problem gar keine Lösung gibt (siehe unten), oder, dass bei dem Zufallsprozess Schüler ausgewählt wurden, die das Restproblem unlösbar machen.
In dem Programm wird zur Zeit bis zu 1000 Mal versucht eine Lösung zu finden, in der für jeden Schüler einer der n Wünsche berücksichtigt wird.

b) Bemerkungen:
1) nicht gerecht
Das wiederholte Versuchen eine Lösung zu finden bevorzugt die Schüler, die nur populäre Workshops ausgewählt haben, da ein abwählen dieser Schüler aus überbelegten Workshops häufiger zu Nichtlösbarkeit des Restproblems führt.
2) nicht immer lösbar
Wenn bei einem Aufruf (in den zur Zeit 1000 Versuchen) keine Lösung gefunden wurde, sollte man es mehrmalig probieren, da sich die Auswahl durch den Zufallsprozess jedes mal ändert.
Falls auch nach mehrmaligem Versuch keine Lösung gefunden werden kann, kann man die Workshopgrössen anhand der Anzahl der Wünsche vielleicht anpassen.
Angehängte Dateien
Dateityp: xlsm workshop.xlsm (34,6 KB, 43x aufgerufen)

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.

Geändert von Oge (07.06.2017 um 20:02 Uhr).
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 01.09.2017, 13:20   #7
deha
Neuer Benutzer
Neuer Benutzer
Standard

Wow, vielen Dank euch beiden! Ich finde beide Lösungen total beeindruckend, vor allem weil sie ganz unterschiedlich zu einer Lösung führen!
deha ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 02.09.2017, 18:07   #8
WS-53
MOF Koryphäe
MOF Koryphäe
Standard

Hallo Daniel,

ich habe das ganze nun noch einmal überarbeitet. Vor allem hat mich gestört, dass wegen der Zufallszahlen, jede Aktualisierung ständig andere Ergebnisse ermittelt hat und so eine Kontrolle sehr schwierig war.

Ich musste nun zwar auch etwas Makroprogrammierung einsetzen, aber dies hält sich stark in Grenzen.

Die Zufallszahlen sind nun in das Tabellenblatt "ZZ" (ZufallsZahlen) in Spalte A gewandert. Im Tabellenblatt "Umfrage" gibt es nun 2 Drucktasten. Wenn du die Taste mit dem Titel "Kurseinteilung durchführen" drückst und mit JA bestätigst, werden die Zufallszahlen im Tabellenblatt ZZ mittels "Kopieren > Inhalte einfügen > Werte" von Spalte A in Spalte B übertragen.

Und da nun die Reihenfolge Der Teilnehmer über die Zufallszahlen der Spalte B gebildet wird, bleibt diese solange konstant, bis du die Taste entweder wieder erneut drückst, oder du die Taste "Kurseinteilung löschen" drückst.

Die Löschtaste bewirkt, dass der Inhalt der Spalte B im Tabellenblatt ZZ gelöscht wird und somit sämtliche Einteilungen zurückgenommen werden. Weiterhin werden im Tabellenblatt "Kurseinteilung" die manuell vorgenommenen Einteilungen gelöscht.

Im neuen Tabellenblatt "Kurse" kannst du Kursvorgaben für: max. Plätze, Füllgrenze, mindest Anzahl und Füllgrenze Runde 2 machen.

Mit dem Kurseintrag "Default" legst du die Standardwerte fest. Nur für Kurse, bei denen es Abweichungen gibt, sind hier weitere Einträge erforderlich. Die Reihenfolge spielt dabei keine Rolle.

Im Tabellenblatt "Zuordnung" wird nun 1-mal von größter zur geringsten Nachfrage eingeteilt und in einer 2. Runde, für die übrig gebliebenen, wird dann von der geringsten zu größten Nachfrage eingeteilt.
Im Tabellenblatt "Kurseinteilung" siehst du dann alle Kurse mit den zugeordneten Teilnehmern.

Dabei ist die individuelle Teilnehmergrenze markiert. Ebenso werden Kurse markiert, die zu wenige Teilnehmer haben.

Unterhalb der Kurseinteilung werden all die Teilnehmer gezeigt, für die entweder keine Einteilung vorgenommen wurde, oder deren zugeordneter Kurs zu wenige Teilnehmer hat.

In diesem Bereich kannst du nun in Spalte H (Titel: man. Zuteilung), die übrig gebliebenen Teilnehmer manuell einem Kurs zuweisen.

Teilnehmer, die du von einem Kurs umbuchst, der zu wenige Zuweisungen hat, werden im alten Kurs, mittels bedingter Formatierung, dunkelgrau hinterlegt dargestellt.

Die Spalten mit dem Titel "Platz" und "Key" enthalten Formeln, über deren Ergebnisse dann im oberen Teil, jeder manuell eingeteilte Teilnehmer sofort im jeweiligen Kurs gezeigt wird.

Im Tabellenblatt "Umfrage", werden die von den Teilnehmern gewählten Kurse gelb markiert, die automatisch zugewiesenen, werden grün markiert und die manuell zugewiesenen werden braun markiert.

Achtung! Da die Mappe nun für den Upload zu umfangreich geworden ist, habe ich im Tabellenblatt "Zuordnung" alles ab Zeile 61 gelöscht.
Damit alles richtig funktioniert, musst du die Formeln der letzten Zeile bis auf Zeile 260 runter ziehen.
Angehängte Dateien
Dateityp: xlsm mof - Kurszuteilungen_V3_gekürzt.xlsm (180,5 KB, 23x aufgerufen)

__________________

VG, WS-53


>>> Ein Spezialist kann nicht viel, dies aber gut. Die Steigerung ist, noch weniger noch besser zu können. Die Krönung ist, nichts zu können, aber darin perfekt zu sein! Es gibt aber auch Naturtalente, die überspringen die Ersten beiden Stufen. <<<

Übrigens, Feedback, egal welcher Art, ist immer hilfreich. Und erledigte Beiträge sollten auch den Status "erledigt" erhalten.
WS-53 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 04.10.2017, 09:15   #9
deha
Neuer Benutzer
Neuer Benutzer
Standard

Hallo WS-53,

danke für deinen Hinweis per Mail, dass du noch eine neue Version erstellt hast, die Forenbenachrichtigung ist leider im Spamordner gelandet!

Die Datei berücksichtigt auf jeden Fall viel mehr, als ich am Anfang bedacht habe. Nebem dem endgültigen Resultat finde ich die Bedienung jetzt auch ziemlich komfortabel. Vielen Dank für deine Arbeit!

Beste Grüße
Daniel
deha ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 13.03.2018, 18:12   #10
Oge
MOF Profi
MOF Profi
Standard

Hallo an alle Interessierten,

da ich in den letzten zwei Jahren schon einige Fragen zu dem Thema gefunden habe, möchte ich meinen Beitrag #6 ein wenig vervollständigen, damit die Datei an die jeweiligen Bedürfnisse angepasst werden kann.

A) Aufgabe:
Das Programm ermittelt wenn möglich
a) für eine vorgegebene Anzahl von Workshops mit vorgegebenen maximaler Teilnehmerzahl und
b) für eine vorgegeben Anzahl von möglichen Teilnehmer mit einer priorisierten Wunschliste
eine zulässige Zuordnung.


B) Verfahren:
1) allgemein
Da bei einer grösseren Anzahl von Teilnehmern eine vollständige Untersuchung aller Kombinationen zeitlich nicht möglich ist, versucht das Programm eine gültige Kombination über Zufallsprozesse zu ermitteln.
Für jede Ebene der Wünsche wird für jeden Workshop nachgesehen wieviele Schüler, die auf den vorherigen Ebenen noch nicht berücksichtigt wurden, auf der aktuellen Ebene diesen Workshop gewählt haben.
Ist die Zahl grösser als die Anzahl der Restplätze in diesem Workshop, wird die Liste über Zufallszahlen reduziert.
Die restlichen Schüler werden dem Workshop zugeordnet.
2) nicht immer lösbar
Diese Verfahren führt nicht immer zu einer Lösung, in der alle Schüler berücksichtigt werden. Das kann daran liegen, dass es für dieses Problem gar keine Lösung gibt (siehe unten), oder, dass bei dem Zufallsprozess Schüler ausgewählt wurden, die das Restproblem unlösbar machen.
In dem Programm wird zur Zeit bis zu 10.000 Mal versucht eine Lösung zu finden, in der für jeden Schüler einer der n Wünsche berücksichtigt wird.

C) Bemerkungen:
1) nicht gerecht
Das wiederholte Versuchen eine Lösung zu finden bevorzugt die Schüler, die nur populäre Workshops ausgewählt haben, da ein abwählen dieser Schüler aus überbelegten Workshops häufiger zu Nichtlösbarkeit des Restproblems führt.
2) nicht immer lösbar
Wenn bei einem Aufruf (in den zur Zeit 10.000 Versuchen) keine Lösung gefunden wurde, sollte man es mehrmalig probieren, da sich die Auswahl durch den Zufallsprozess jedes mal ändert.
Falls auch nach mehrmaligem Versuch keine Lösung gefunden werden kann, kann man die Workshopgrössen anhand der Anzahl der Wünsche vielleicht anpassen.
Falls es häufiger vorkommt, dass erst nach mehrmaligen Aufruf eine gültige Lösung gefunden wird (der Lösungsraum im Verhältnis zum Suchraum also sehr klein ist), kann man im Programm die Anzahl der Versuche erhöhen (Konstante "lngMaxVersuch").
Ein Nachteil dabei ist, dass sich, falls keine Lösung gefunden wird, die Zeit bis zur Beendigung des Programms linear erhöht.

D) Vorraussetzungen
a) benötigt werden
neben dem Programmcode und dem Button zum Aufrufen des Codes drei benannte Bereiche:
1) benannter Bereich "Wuensche"
In diesem Bereich werden die priorisierten n Wünsche der Teilknehmer eingetragen. In der ersten Spalte erwartet das Programm eine eindeutige Kennung des Teilnehmers und in den folgenden Spalten die Workshopnummer nach Priorität.
Anhand der Anzahl der gefüllten Teilnehmerkennungen im Bereich ermittelt das Programm die Anzahl der Teilnehmer und anhand der Anzahl der Spalten die mögliche Hierarchietiefe der Wünsche.
2) benannter Bereich "Workshops"
In diesem Bereich erwartet das Programm in der ersten Zeile eine eindeutige Kennung des Workshops und in der zweiten Zeile die maximale Teilnehmerzahl.
Die Workshopnummer für die Wunschliste ergibt sich aus der Spaltennummer des Bereiches.
3) benannte Zelle "Ausgabe"
Ab dieser Zelle werden die Ergebnisse der Berechnung eingetragen. Der Bereich bis zur maximalen Teilnehmerzahl aller Workshops wird immer überschrieben. Falls sich diese Zahl reduziert, sollte man den Bereich darunter manuell löschen.
b) nicht benötigt werden
1) der Button cbWunsch und das zugehörige Programm
Es dient lediglich zum Erzeugen von Testdaten für die Wunschliste.
2) die dritte Zeile des Bereiches "'Workshops"
Auch sie wird nur für die Erzeugung von Testdaten benötigt.
3) Die Zeilen mit "Anzahl Wunsch n" in der ersten Spalte
Sie sollen nur die Häufigkeiten der Wünsche auflisten.

E) Anpassen
a) Erweitern der Anzahl der Teilnehmer und Workshops und der Hierarchietiefe der Wünsche.
Da das Programm diese Zahlen anhand der Grösse der benannten Bereiche ermittelt müssen nur die Bereichsgrenzen angepasst werden. Dies kann explizit über "Formeln">"Namensmanager" geschehen oder implizit über Ergänzen von Zeilen/Spalten nach der ersten und vor der letzten Zeile/Spalte des aktuellen Bereiches. Im folgenden beschreibe ich nur die implizite Erweiterung mit den im Anhang eingestellten Bereichsgrenzen.
1. Anzahl der Teilnehmer
Nach der zweiten und vor der 181.ten Zeile im Blatt "'Wuensche" eine entsprechende Anzahl von Zeilen einfügen.
2. Hierarchietiefe
Nach der Spalte A und vor der Spalte D im Blatt "'Wuensche" eine entsprechende Anzahl von Spalten einfügen.
Falls im Blatt "'Workshops" die Zeilen mit dem Text "Anzahl Wunsch n" in der ersten Spalte weiterhin angezeigt werden sollen, müssen die entsprechenden Zeilen hinzugefügt und die Formeln angepasst werden.
3. Anzahl der Workshops
Nach der Spalte B und vor der Spalte M im Blatt "Workshops" eine entsprechende Anzahl von Spalten einfügen.
Falls im Blatt "'Workshops" die Zeilen mit dem Text "Anzahl Wunsch n" in der ersten Spalte weiterhin angezeigt werden sollen, müssen die entsprechenden Formeln angepasst werden und in der ersten Zeile eine fortlaufende Nummerierung geschrieben werden.
b) Reduzierung der Anzahl der Teilnehmer und Workshops und der Hierarchietiefe der Wünsche.
Dies kann wiederum durch Veränderung (explizit oder implizit) der Bereiche geschehen aber auch durch eine Anpassung der Eingaben.
1. Anzahl der Teilnehmer.
Da nur Teilnehmerzeilen berücksichtigt werden, die in der ersten Spalte eine Kennung haben können entsprechend viele Zeilen leer bleiben.
2. Hierarchietiefe
Hier kann man die hinteren Spalten einfach leeren. Die Hierarchietiefe wird im Programm zwar berücksichtigt, da sie aber leer ist, beeinflusst sie nicht das Ergebnis und benötigt so gut wie keine Zeit.
3. Anzahl der Workshops
Im Bereich "Wuensche" nur Nummern von vorhandenen Workshops eintragen.
Angehängte Dateien
Dateityp: xlsm workshop.xlsm (39,8 KB, 11x aufgerufen)

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 21.03.2018, 16:14   #11
Oge
MOF Profi
MOF Profi
Standard

Hallo L...,

A) Zur Datei
Sie ist soweit in Ordnung.
Ich hatte aber unter "Vorraussetzung" geschrieben:

Zitat:

Der Bereich bis zur maximalen Teilnehmerzahl aller Workshops wird immer überschrieben. Falls sich diese Zahl reduziert, sollte man den Bereich darunter manuell löschen.

Man kann auch vor jedem Lauf den gesamten Ausgabebereich löschen.

B) Zum Problem.
Es ist schon mutig 161 Teilnehmer auf nur 168 Plätze mit Prioritäten verteilen zu wollen. Besonders wenn so unbeliebte Workshops wie 9;1;2 und 3 dabei sind.

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 26.03.2018, 09:26   #12
Larsitori
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Oge,

alles klar, vielen Dank für den Hinweis!

Sicherlich mutig, stellte sich allerdings als machbar heraus. Das sind Daten aus einer der letzten Wahlen, für die wir mit einer manuellen Zuteilung tatsächlich eine Lösung gefunden haben.

Grüße
Larsitori ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 26.03.2018, 11:54   #13
Oge
MOF Profi
MOF Profi
Standard

Hallo L...,

A) Lösung für dein Beispiel

Ich habe nicht bezweifelt, dass es für dein Beispiel eine Lösung gibt, in der jeder Teilnehmer in ein Workshop kommt, das in seiner Wunschliste steht.
Aber es gibt keine Lösung in der die Prioritäten konsequent berücksichtigt werden.
1. Um alle Teilnehmer zuordnen zu können müssen mindestens 8 Teilnehmer in Workshop 9 sein.
2. Von den 16 Teilnehmern die überhaupt Workshop 9 ausgewählt haben, haben 9 Teilnehmer in höheren Prioritäten Workshops ausgewählt, in denen es keinen Engpass gibt. Das heist, dass bei konsequenter berücksichtigung der Prioritäten maximal 7 Teilnehmer dem Workshop 9 zugeordnet werden können.
Das ist ein Widerspruch.

B) Erweiterung
In der Anlage habe ich das Programm ein wenig erweitert:

1. zuordnen
Die Zuordnung gibt nun, wenn es in der vorgegebenen Anzahl von Versuchen keine vollständige Lösung gab, eine Liste der Teilnehmer aus, die bei dem Versuch mit der kleinsten Anzahl von nicht zuordnenbaren Teilnehmern nicht berücksichtigt wurden.

2. verschieben
Mit dem Programm wird versucht einstufig einen Teilnehmer der noch nicht zugeordnet wurde gegen einen Teilnehmer auszutauschen, der in seiner Wunschliste noch ein Workshop hat, das noch nicht voll belegt ist.
Über die Zelle "MaxRaenge" kann festgelegt werden bis zu wieviel Ränge der Teilnehmer dabei in seiner Wunschliste nach hinten verschoben werden darf.

3. mehrfach aufrufen
Es kann vorkommen, dass es für eine einstufige Verschiebung (auch bei erlauben maximal möglicher Ränge = AnzahlWünsche-1) nach einer Zuordnung keine Lösung gibt.
Dann kann die Sequenz "zuordnen">"verschieben" mehrfach wiederholt werden, da nach jeder Zuordnung eine andere Liste von Teilnehmern erstellt wird, die noch keinem Workshop zugeordnet sind.

4. Prüfzellen X...
Die Zellen in den Spalten X und folgende, sind für die Programme nicht notwendig, können aber hilfreich sein, wenn für die letzten Teilnehmer die Zuordnung manuell verschoben werden.
Angehängte Dateien
Dateityp: xlsm workshop.xlsm (59,6 KB, 6x aufgerufen)

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.

Geändert von Oge (26.03.2018 um 12:05 Uhr).
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.07.2018, 07:20   #14
Oge
MOF Profi
MOF Profi
Standard

Hallo k...,

bei welchem Schritt in Beitrag #15 unter

Zitat:

E) Anpassen
a) Erweitern ...

kommst du denn nicht zurecht?

Lade doch bitte eine Beispieldatei mit deinen Versuchen hoch.

__________________

helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Oge ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 21.03.2018, 13:30   #15
Larsitori
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Oge,

zunächst mal vielen Dank für die ausführliche Erklärung zu deinem Skript, das hilft tatsächlich sehr!

Ich habe jetzt mal probiert das Ganze für unsere Zwecke anzupassen. In unserem Fall sind es 12 Gruppen mit jeweils 12 oder 15 maximalen Teilnehmern. Insgesamt sind es 168 verfügbare Plätze bei 161 Teilnehmern. Jeder Teilnehmer konnte vier Wünsche angeben.
Hier entsteht leider ein Problem: Das Programm scheint die maximalen Teilnehmerzahlen der einzelnen Gruppen nicht richtig zu berücksichtigen (in der unten angehängten Datei sind beispielsweise den Gruppen 6, 10 und 11 zu viele Teilnehmer zugeordnet). Was auch auffällt ist, dass in der Spalte von Gruppe 6 die Zellen von Zeile 22 bis 24 leer sind, danach jedoch wieder mit Einträgen versehen. Ich hatte für die Anpassung der maximalen Teilnehmerzahlen einfach die entsprechenden Zahlen in der dritten Zeile geändert. Ist das möglicherweise nicht die richtige Vorgehensweise?
Angehängte Dateien
Dateityp: xlsm workshop_4_Wünsche.xlsm (39,9 KB, 5x aufgerufen)
Larsitori ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.