Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Wie kann man in Excel Kombinationen mit bestimmten Eigenschaften erstellen?
#11
Hallo c...,

ich habe noch einen Denkfehler gefunden.
Wenn ich jedes Element nur einmal berücksichtige, brauche ich bei einer Kombination mit n Elementen in der ersten Position nicht mehr die letzten (n-1) Elemente einsetzten, da ja keine (n-1) Elemente mehr kommen können.
Ich hatte das so eingebaut um einige Rekursionsaufrufe zu sparen.
Das geht aber nicht mehr wenn die Elemente mehrfach vorkommen können. Dann werden die letzten möglichen Kombinationen nicht mehr angezeigt. Das habe ich jetzt behoben.


Angehängte Dateien
.xlsm   KombinationenMitEinschränkungen.xlsm (Größe: 60,6 KB / Downloads: 1)
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.





[-] Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:
  • casandra88
Antworten Top
#12
Lieber Herr Helmut,

vielen lieblichen Dank für Ihre bisherige Arbeit. Ich habe die „Arten“ getestet und festgestellt das sie reibungslos funktionierten bis auf einige Kleinlichkeiten. 
Wenn ich zugleich SummeNinGruppe + Prim und SummeNinGruppe + OhneSumme  einstelle dann wird die Prim Gruppe irgendwie trotzdem in den Kombinationen berücksichtigt. Das gleiche passiert bei der Spanne auch.

Zu „MaxEinSet*“ hätte ich noch eine Frage: sollte dieser Parameter eigentlich nicht dazu dienen, die Zahl der Elemente die maximal aus einem Set stammen sollen festzulegen und nicht dazu die „wieviel Elemente maximal in einem Set sein dürfen“, weil das steht ja im Prinzip schon fest, denn in der Tabelle mit den einzelnen Sets (WWP-) sind ja die „P-elemente“ alle aufgelistet.

Was die Namen der Bedingungen angeht, würde ich sie gerne wechseln von:
·        AnzEKombis auf: IleSR1
·        AnzEinGruppe auf: IleZ
·        AnzENinGruppe auf: IleNIEz
·        AnzSets auf: IleWWP
·        AnzSinGruppe auf: WPPIleZ
·        AnzSNinGruppe auf: WPPIleNIEz
·        EmitNachbarn auf: POB
·        SmitNachbarn auf: WPPPOB
·        MaxAnzE auf: >1P
·        MaxEgleichSet auf: NPW
·        MaxEinSet*: auf: WWP>1P
·        SpanneinGruppe auf: ROZ=
·        SpanneNinGruppe auf ROZnie=
·        SummeinGruppe auf: SUM=
·        SummeNinGruppe auf: SUMnie=

Ich weiß ich habe Sie schon sehr lange und mühsame Art beschäftigt, deshalb wenn sie mich schon Satt haben, dann lesen Sie bitt nicht weiter ;). 
Sollten Sie jedoch weiter noch so großzügig sein, dann möchte ich schon für Ihre Bereitschaft dazu danken. Ich habe ein neues file attached. Sie haben sich vielleicht die ganze Zeit gefragt, was sich überhaupt hinter P1 usw. verbergt. Nun, ganz kurz – Zahlen. „P-elemente“ sind eigentlich auch Sets, nur hier sind sie mit „normalen“ Zahlen gefüllt, also ohne irgendwelche Buchstaben davor etc. ;)

Ich wollte fragen ob es die Möglichkeit gäbe zwei verschiedene Kombinationsbildungsverfahren zu vereinen. Also, jetzt ganz konkret. In dem neunen file habe ich vier weitere Worksheets dazugegeben:
·        P1-P14, D1,G1(1) — hier sind alle Zahlen aufgelistet die in den jeweiligen „P-sets“ zugeordnet sind. Die Eins in den Klammern bedeutet das es sich hierbei um um P-elemente und D1, G1 aus dem ersten Kombinationsbildungsverfahren handelt;
·        Arkusz2 — ist identisch wie Arkusz1 nur, das hier die P-elemente zu anderen WWP-sets zugeordnet sind, weil es sich hier um das zweite Kombinationsbildungsverfahren handelt.
·        Tabellen2 — ist identisch wie „Tabellen“, nur das hier andere Zahlenwerte in den einzelnen Gruppen (WWD usw.) vorkommen, also die Werte aus dem zweiten Kombinationsbildungsverfahren;
·        P1-P14, D1,G1(2) — hat die identische Funktion wie „P1-P14, D1,G1(1)“, nur das hier die Zahlen aus den „P-sets“ von dem zweiten Kombinationsbildungsverfahren aufgezeigt sind.
Ich habe das von Ihnen erstellte Worksheet „Tabelle2“ nicht verdoppelt, weil ich nicht weiß ob es für das Makro notwendig ist, sollte es aber so sein, dann würde ich das auch kopieren, damit das zweite Kombinationsbildungsverfahren reibungslos abläuft.

In meiner Vorstellung müsste der ganze Prozess so ablaufen:
1.      Ich benutze die „Arten“ um Bedingungen für die Kombinationen in Arkusz1 festzulegen — erste Kombinationsbildungsverfahren.
2.      Ich benutze die „Arten“ um Bedingungen für die Kombinationen in Arkusz2 festzulegen — das zweite Kombinationsbildungsverfahren.
3.      Jetzt kommen die Zahlen in den „P-sets“ ins Spiel. Da einige (ziemlich viele) von diesen Zahlen in beiden Kombinationsbildungsverfahren vorkommen, könnte man eine Feature erstellen, dass Paare von Kombinationen bildet die sowohl den Nebenbedingungen aus dem ersten als auch aus dem zweite Kombinationsbildungsverfahren entsprechen.
Ein Beispiel: Sagen wir:
     die Nebenbedingungen aus dem ersten Kombinationsbildungsverfahren lassen die Kombination P2, P4, P9 zu.
     die Nebenbedingungen aus dem zweiten Kombinationsbildungsverfahren lassen die Kombination zu P1, P3, P6, P12 zu.
 
 1 Tabelle (attachment) (in der docx Beschreibung auch verfügbar)
 
Diese beiden können und dürfen kein Kombinationspaar bilden, weil:
·        In der ersten Kombination kommt P2, nur einmal vor, doch wenn man die II Kombination dazu nimmt, dann müsste P2 in der ersten Kombi dreimal vorkommen, tut es aber nicht.
·        In der zweiten Kombination kommt P6 nur einmal vor, doch wenn man die I Kombination mitberücksichtigt, dann müsste P6 in der zweiten Kombi zweimal vorkommen, tut es aber nicht.
·        In der Tabelle (unten), sehen Sie, einen weiteren Grund. Es kann vorkommen, das wie z.B. im Fall von P4 (4, 14, 27) in der ersten Kombination, keine der dieser Zahlen in irgendeinem P-set in der zweiten Kombination vorkommen.
Das schließt die beiden Kombinationen als mögliches Paar aus, aber *NUR* dann wenn, die Zahlen (4, 14, 27) in anderen P-sets außerhalb der Kombination auftreten. In diesem Exemple sind das die P2, P11 die in dem zweiten Kombinationsbildungsverfahren zur Auswahl stehen.
Es gibt die eventuelle Möglichkeit der Existenz einer Zahl wie z.B. der 10, oder 25 in diesem Beispiel. Das sind Zahlen die zwar in keinem von den P-sets in der ersten Kombination vorkommen, sie sind jedoch *AUCH* nicht in allen anderen P-sets vorhanden die zur Auswahl im ersten Kombinationsbildungsverfahren verwendet werden können.
 
 
 2 Tabelle (attachment) [b](in der docx Beschreibung auch verfügbar)[/b]
 
 
Um alles kurz Zusammen zufassen, meine höfliche Bitte besteht darin ein Feature zu erstellen, dass nachdem schon die einzelnen Kombinationen aus beiden Kombinationsbildungsverfahren mit den bisher entwickelten Nebenbedingungen gebildet wurden es ermöglicht, aus diesen,  Kombinationspaare zu bilden, die die Bedingungen miteinbeziehen die ich in der drei Punkten beschrieben habe.


Angehängte Dateien Thumbnail(s)
       

.xlsm   Kombi mit P1-14.xlsm (Größe: 61,08 KB / Downloads: 1)
.docx   Kombinationspaare Beschreibung.docx (Größe: 21,69 KB / Downloads: 1)
Antworten Top
#13
Hallo c...,

1. zu
Zitat:... SummeNinGruppe + Prim und SummeNinGruppe + OhneSumme ...

Ja, das ist so eingerichtet. Es wird immer nur der letzte Eintrag der Art berücksichtigt. Ich habe versucht es in der Spalte "NurLetzteWirdBerücksichtigt" aus der Tabelle "Arten" ein wenig zu dokumentieren. Du könntest die Primzahlen zusätzlich in die Gruppe "OhneSumme" eintragen.
Im übrigen: Die Zahlen in den Gruppen müssen in aufsteigender Reihenfolge eingetragen werden.

2. zu
Zitat:... „MaxEinSet*“ ...
Du hast recht, es sollte eher "MaxEausSet" heissen. Das gleiche gilt auch für die Gruppen eher "...ausGruppe" als "...inGruppe".
Hat sich jetzt wohl erledigt, da in der Anlage die Kennungen angepasst wurden.

3. zum Blatt "Tabelle2"
Dieses Blatt wird nicht benötigt. Es war mir nur bei der Programmierung eine Hilfe zu sehen in welcher Spalte der Arrays welche Information abgelegt ist.

4. zu
Zitat:Um alles kurz Zusammen zufassen,....
Um es kurz zu sagen: Nein.

Zum einen habe ich die Anfrage absolut nicht verstanden und zum anderen (wichtigeren) sehe ich sie, ohne ein Verständnis der realen Anwendung zu sehen, als reine Beschäftigungstherapie für mich. Lapidare Antworten, dass Nebenbedingungen bei der Bildung von Kombinationen dazu dienen die Anzahl der Kombinationen zu verringern, heben diesen Eindruck nicht auf.


Angehängte Dateien
.xlsm   KombinationenMitEinschränkungenKürzel.xlsm (Größe: 54,25 KB / Downloads: 2)
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.





[-] Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:
  • casandra88
Antworten Top
#14
Sehr geehrter Herr Helmut,

was den praktischen nutzen angeht, könne ich sehr lange darüber schreiben. Wie schon früher gesagt, bin ich kein Mathematik As, aber insbesondere Kombinatorik interessiert mich, bis jetzt eher als Hobby, aber ich plane mich für das künftige Wintersemester an meiner Uni für Mathematik zu rekrutieren. Ich habe nämlich etwas was bis jetzt nur in meiner Vorstellung zu Hause war, vor eventuell in Realität umzusetzen. Grob beschrieben habe ich verschiedene Gedanken die sich um das erleichtern von Bildung von Kombinationen drehen, die gewisse Nebenbedingungen entsprechen. Es fällt mir schwer das in Worte zu fassen, weil es einfach nicht existieret (das ist eine reine Theorie von mir) und ich nicht weiß ob es das kann, deshalb suche ich nach Mitteln, die es mir erlauben meine Gedanken zu testen. Unten habe ich noch einmal versucht zu Erklärern worum es mir geht. Bitte, meinen Sie nicht ich habe böse Intentionen und möchte einfach Ihre Zeit stehlen etc.

Ich versuche es noch einmal und ich hoffe diesmal besser zu erklären. Nachdem ich auf die „tuwat“ Taste draufklicke erscheinen die gewünschten (durch die Nebenbedingungen gefilterten) Kombinationen. Die Kombinationen bestehen aus „P-elementen“ (P1, P2, usw.). Diesen Vorgang nenne ich Kombinationsbildungsverfahren.

In der xls Datei „Kombi mit P1-14“ befinden sich die folgenden Worksheets:


— Arkusz1* – kennen Sie                                            
— Tabellen1* – kennen Sie                                             
— P1-P14, D1,G1(1) – wird unten beschrieben     

*diese Worksheets werden für das erste Kombinationsbildungsverfahren genutzt

— Arkusz2** – identisch mit „Arkusz1“, nur das hier den WWP-sets nicht dieselben P-elemente zugeordnet sind wie in „Arkusz1“                 
— Tabellen2** – identisch mit „Tabellen“, nur das hier in den Gruppen (WWD usw.) andere Werte vorkommen als in „Tabellen“                
— P1-P14, D1,G1(2) – identisch wie „P1-P14, D1,G1(2), nur mit anderer Zahlen Zuordnung   
**diese Worksheets werden für das zweite Kombinationsbildungsverfahren genutzt     

Der Knackpunkt ist, das für die Funktionalität des neuen Features, jedes „P-element“ zusätzlich als ein Set fungieren muss — als ein Satz von Zahlen. Die Zahlen, die den einzelnen „P-elementen“, beziehungsweise, „P-Sets“ zugeordnet sind, sind in einer Tabelle in dem Worksheet „P1-P14, D1,G1(1)“ aufgelistet. Dasselbe gilt für Worksheet „P1-P14, D1,G1(2)“, nur das hier den „P-sets“ andere Zahlen zugeordnet sind.
Der ganze Clou des Features soll darin bestehen, das es möglich ist, nachdem schon die Listen der Kombinationen sowohl in Arkusz1 (Kombinationsbildungsverfahren Nummer Eins) als auch in Arkusz2 (Kombinationsbildungsverfahren Nummer Zwei) vorhanden sind, aus diesen zwei Listen jeweils eine Kombination aus Arkusz1 mit einer anderen aus Arkusz2 zu paaren. „Paaren“, bedeutet nicht direkt fusionieren oder miteinander verbinden sondern einfach die beiden Kombinationen zusammen, aber einzeln anzeigen, z.B. mit einem „+“ Zeichen dazwischen.
Die Paarung zweier Kombinationen muss, aber unter einigen Bedingungen stattfinden und genau dazu sind die Zahlen aus den „P-sets“ notwendig. Ich werde es wieder mit einem Beispiel versuchen, aber mit einem neunen. Nehmen Wir an, das Feature muss entscheiden ob die Kombi P1, P3, P5, P10 (I Kombination) aus Arkusz1 gepaart werden darf mit Kombi P2, P3, P9, P13 (II Kombination) aus Arkusz2. Um das zu ermitteln muss das Feature die Zahlen vergleichen, die den „P-sets“: P1, P3, P5, P10 im Worksheet P1-P14, D1,G1(1) zugeordnet sind mit den Zahlen die den „P-sets“ P2, P3, P9, P13 in P1-P14, D1,G1(2) zugeordnet sind. Ich habe, wie letztes Mal, eine Tabelle mit dem Vergleich erstellt. (attach. Tab. 1)

Hierbei kann sich einiges ergeben:
1.      Der erste Schritt ist das Vergleichen ob und welche Zahlen in beiden „P-sets“ der Kombinationen auftreten. Generell, müssen einige (mindestens eine aus jedem, einzelnen P-Set) der Zahlen in den P-sets der beiden Kombinationen gleich sein damit ein paar aus den Kombinationen gebildet werden kann. Im Prinzip ist die Basisvoraussetzung um ein Paar bilden, dass in jedem P-Set der ersten Kombination, mindestens, eine Zahl vorkommt die in einem P-Set der zweiten Kombination zu finden ist. Die Zahlen mit einem gelben Hintergrund sind sowohl in P-Sets in der ersten Kombination als auch in P-Sets in der zweiten Kombination zu finden. Zudem, ist eine Zahl mit gelbem Hintergrund in *jedem*, einzelnen P-Set beider Kombinationen vorhanden. Die Zahlen mit dem roten Hintergrund stellen andere Optionen von Zahlen da, die man in P-Sets beider Kombinationen findet, es reicht aber, wenn nur eine Zahl gemeinsam ist, wie z.B. die 29 im Falle von P5 (I Kombi) und P13 (II Kombi). Das Feature kann und soll natürlich auch die 16 als gemeinsame Zahl erkennen, jedoch ist das für das Endergebnis, also für das Bilden von Kombinationspaaren nicht unbedingt zwingend.
 
2.      Viellicht erinnern Sie sich and die Nebenbedingung „MaxEinSet*“ die eigentlich „MaxEausSet" heißen sollte. Wenn diese Nebenbedingung es zulässt dass, ein P-element zwei Mal genutzt werden darf, also z.B. in der ersten Kombi hätten Wir: P1, P1, P3, P5, P10. In dieser Situation können aus dem P1-Set zwei Zahlen dafür verwendet werden, identische Zahlen in den P-Sets der II Kombination zu finden, z.B. die 5 in P2 und die 2 in P3. Umgekehrt gilt natürlich, dass wenn in einer Kombination, ein P-Element nur einmal auftritt, dann bedeutet das, dass maximal nur eine Zahl aus dem P-Set zu Verfügung steht. In dem Beispiel, z.B. da P10 in der I Kombi: „P1, P3, P5, P10“ nur einmal enthalten ist, darf maximal nur eine Zahl aus: 11, 33 berücksichtigt werden.
 
3.      WICHTIG! In Punkt 1, habe ich beschrieben, das mindestens eine Zahl aus jedem, einzelnen P-Set der I Kombi in einem P-Set der zweiten Kombi vorkommen muss. Davon gibt es eine Ausnahme. Wenn eine Kombination aus P-elementen erstellt wird, dann werden automatisch die anderen P-Elemente (die nicht in der Kombination enthalten sind) natürlicherweise nicht berücksichtigt. Diese, nichtberücksichtigten P-Elemente, bzw. P-Sets haben auch Zahlen die ihnen zugeordnet sind. Da in den beiden Kombinationsbildungsverfahren die P-Sets mit verschiedenen Zahlen ausgestattet sind, jedoch einige (ziemlich viele) von diesen Zahlen dieselben sind, nur halt eben in den anderen P-Sets zu finden sind, kann es vorkommen, dass eine Zahl die z.B. in den P-Sets der I Kombination vorkommt, überhaupt nicht in allen P-Sets (P-elementen) von dem zweiten Kombinationsbildungsverfahren vorkommt. Dazu habe ich auch eine Tabelle vorbereitet. (attach. 2 Tab.2)

In dem Beispiel sind es die Zahlen 3 und 8. Hypothetisch, wenn es die Zahl 18 in P3 der I Kombi nicht gäbe, dann würde im P3-Set gar keine Zahl vorkommen die auch in den P-sets aus der zweiten Kombination vorkommt. Dem ersten Punkt zufolge, müsste man deshalb die I Kombination als nicht geeignet für eine Paarbildung abstempeln. ACHTUNG! Wenn, aber eine Zahl, wie die 3 oder die 8 in keinem P-set, das im zweiten Kombinationsbildungsverfahren zu Verfügung steht, vorkommt, dann darf die *erste* Kombination trotzdem ein Paar bilden.


Angehängte Dateien Thumbnail(s)
       

.xlsm   Kombi mit P1-14.xlsm (Größe: 59,87 KB / Downloads: 3)
.docx   Erklärung.docx (Größe: 31,69 KB / Downloads: 1)
Antworten Top
#15
Lieber Herr Helmut,

ich wollte Sie nur Mal kurz fragen, ob Ihr „Nein“ ein definitives „Nein“ war, oder ob Sie es, nachdem ich Ihnen den Grund gesagt habe und nochmal probierte es zu erklären, vielleicht doch noch versuchen würden (also das Feature zu erstellen)?
Antworten Top
#16
Hallo c...,

ja, jetzt ist es ein definitives Nein.

Viel Erfolg beim Mathmatikstudium und beim Verfolgen deiner Idee.
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.





Antworten Top
#17
„jetzt”, also war es das vorher nicht, oder wie soll ich das verstehen? Hat Sie etwas in meinem letzten oder vorletzten Beitrag irritiert?
Antworten Top
#18
Hallöchen,

Zitat:Hat Sie etwas in meinem letzten oder vorletzten Beitrag irritiert?

wenn ich mir als Außenstehender mal die Entwicklung der Aufgabenstellung anschaue, so wird die nicht unbedingt kürzer und verständlicher und wenn zudem unklar ist, ob da ein praktischer Nutzen existiert .... Siehe in helmut's Beitrag #13 der Punkt 4.

Da ist es bei komplexen Aufgabenstellungen eventuell sinnvoller, erst mal in einem Matheforum die entsprechenden mathematischen Grundlagen zu eruieren und erst im zweiten Schritt zu schauen, ob und wenn ja wie sich das in Excel umsetzen lässt.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#19
Hallo c...,

mir fehlt weiterhinn der Sinn aber zusätzlich, nachdem ich glaube deine Anforderung 1-3 aus #14 verstanden zu haben, übersteigt die Anfrage für mich den Sinn einer Excel-Hilfe bei weitem (und was anderes mache ich nicht).
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.





[-] Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:
  • casandra88
Antworten Top
#20
Lieber Herr Helmut,

ich verstehe. Ich möchte mich noch einmal herzlich bei Ihnen für Ihre großartige  Arbeit bedanken. Sie haben wirklich tolles geleistet und mir sehr, sehr geholfen, was ich unheimlich zu schätzen weiß.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste