Thema Datum  Von Nutzer Rating
Antwort
07.03.2011 14:42:26 daniel001
NotSolved
07.03.2011 14:43:42 daniel001
NotSolved
07.03.2011 14:50:01 Gast42947
NotSolved
07.03.2011 15:13:48 Severus
NotSolved
07.03.2011 15:26:32 daniel001
NotSolved
07.03.2011 16:03:16 daniel001
NotSolved
07.03.2011 16:25:01 Severus
NotSolved
07.03.2011 16:41:01 Gast3944
NotSolved
07.03.2011 16:44:12 Daniel001
NotSolved
07.03.2011 16:55:20 daniel001
NotSolved
07.03.2011 17:58:32 Severus
NotSolved
08.03.2011 10:27:52 Gast27201
NotSolved
08.03.2011 12:22:28 Severus
NotSolved
08.03.2011 12:36:32 Gast14356
NotSolved
08.03.2011 13:32:55 Severus
NotSolved
08.03.2011 14:05:04 Severus
NotSolved
08.03.2011 14:12:11 Severus
NotSolved
08.03.2011 15:28:56 Gast79202
NotSolved
Rot Laufzeitfehler -2147024809 (80070057)
15.03.2011 16:37:22 daniel001
NotSolved
15.03.2011 17:33:36 Severus
Solved
16.03.2011 10:27:45 daniel001
NotSolved

Ansicht des Beitrags:
Von:
daniel001
Datum:
15.03.2011 16:37:22
Views:
1421
Rating: Antwort:
  Ja
Thema:
Laufzeitfehler -2147024809 (80070057)

Yo,

also ich habe zumindest den Fehler gefunden, warum es zu dem Laufzeitkonflikt kam.

Der Code erzeugt ein eindimensionales Array, d.h. der User dürfte nur noch folgende Abhängigkeiten wählen

Bsp.:
 

A      B        C                D       E                 F                 
56    56      Marke1     L       Blau            BL
56    56      Marke2     M       Gelb           GE
56    56      Marke3     N       Grün          GR

81    81       Marke2    O       Gelb           GE
81    81      Marke4     P       Schwarz     SW

 

56 Marke1 --> nur Farbe Blau
56 Marke2 --> nur Farbe Gelb

Genau das will ich ja nicht. Die Befüllung in der ComboBox (auf der UserForm) ist zwar richtig, aber bei sämtlichen Ausgaben in der Textbox, bekomm ich natürlich Konflikte, wenn der User sich nicht an das eindimensionale Array stringent hält.

Lass ich dann die Befüllung auch noch über ne Schleifeniterierung laufen, kommt natürlich prompt besagter Laufzeitfehler. Macht auch durchaus Sinn.

Mein Ziel:

Der User soll z.B. Design 56 auswählen können, erhält dann nur die Marken 1,2 und 3 angezeigt oder Design 81, dann nur die Marken2 und 4, vom Design ist auch die Farbmöglichkeit abhängig. So kann der User bei Design 56 nur zwischen Blau, gelb und grün auswählen, bei Design 81 nur zwischen Gelb und Schwarz.

Am Ende seiner Auswahl soll ein Code generiert werden: Er möchte ein gelbes Design 56 der Marke 2: L56-GE

Ohne die Abhängigkeit vom Design hab ich das auch schon lauffähig gekriegt.

Sogar mit Abhänigkeit, aber auch nur, wenn der Kd "alles aus einer Reihe" wählt. Z.B. 81-->Marke2---> Gelb.

Nun fallen mir spontan zwei Lösungen ein, die mein Problem umgehen könnten:

Variante 1:
Für jedes Design erstell ich ein Tabellenblatt (wir haben derzeit ca 20 Designs --> 21 Tabellenblätter) und zwei UserForms. In der ersten UserForm wählt User nur das Design aus, abhängig vom Design wird auf ein anderes Tabellenblatt zugegriffen.

Variante 2:

Ich segmentiere quasi meine Tabelle. Sagen wir z.B. Bereich A1:F3 ist nur für Design 56 zuständig und Bereich A3:F5 nur für Design 81. Allerdings kann ich das ja so gar nicht meiner den RowSource Eigenschaft meiner jeweiligen ComboBox verständlich machen.

Was mir so zu Variante spontan einfällt:

Wieder erstelle ich zwei UserForms (das möchte ich sowieso, da mir das von der Aufteilung sehr gut gefällt), auf der 1. UserForm wählt der User nur das Design aus. In Abhängigkeit von dieser Auswahl wird mittels einer case-Fallunterscheidung erst die RowSource Eigenschaft gesetzt.

Beispiel:

Tabelle1:

56
78
81

Tabelle 2:

Marke1     L       Blau           BL
Marke2     M       Gelb          GE
Marke3     N       Grün          GR

Marke2    O       Gelb           GE
Marke4     P       Schwarz    SW

User wählt 56 aus:

Neue UserForm erscheint und im Hintergrund wird nun die zweite Tabelle aktiv, deren RowSource Eigenschaftswerte haben sich dann quasi dynamisch zur Auswahl aus Tabelle1 generiert.

RowSource Eigenschaftswerte sind nun für ComboBox1 $A$1:$B$3 für ComboBox2 $C$1:$C$3

Bei Userauswahl Design 81 passiert dann analog:

Eigenschaftswerte sind nun für ComboBox1 $A$4:$B$6 für ComboBox2 $C$4:$C$6

Ist das in VBA möglich?

Bester Gruß,

Daniel

 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
07.03.2011 14:42:26 daniel001
NotSolved
07.03.2011 14:43:42 daniel001
NotSolved
07.03.2011 14:50:01 Gast42947
NotSolved
07.03.2011 15:13:48 Severus
NotSolved
07.03.2011 15:26:32 daniel001
NotSolved
07.03.2011 16:03:16 daniel001
NotSolved
07.03.2011 16:25:01 Severus
NotSolved
07.03.2011 16:41:01 Gast3944
NotSolved
07.03.2011 16:44:12 Daniel001
NotSolved
07.03.2011 16:55:20 daniel001
NotSolved
07.03.2011 17:58:32 Severus
NotSolved
08.03.2011 10:27:52 Gast27201
NotSolved
08.03.2011 12:22:28 Severus
NotSolved
08.03.2011 12:36:32 Gast14356
NotSolved
08.03.2011 13:32:55 Severus
NotSolved
08.03.2011 14:05:04 Severus
NotSolved
08.03.2011 14:12:11 Severus
NotSolved
08.03.2011 15:28:56 Gast79202
NotSolved
Rot Laufzeitfehler -2147024809 (80070057)
15.03.2011 16:37:22 daniel001
NotSolved
15.03.2011 17:33:36 Severus
Solved
16.03.2011 10:27:45 daniel001
NotSolved