Dropdown-Menü abhängig machen von eingegebener Zahl?

Eingabezeile? Von was? Des Dropdown-Menüs? Tabelle5 oder als Name "DD", A1. Ausgegeben soll das in B1 in Tabelle4. Das Eingabefeld der Zahl, welche nachher bestimmt wieviele Dropdownmenüs untereinander erscheinen soll (Tab4, B1, C1, D1,...).

Mit nicht wissen was wir wollen hat das nichts zu tun. Menükarten sind saisonbedingt und das hier soll das anpassbar sein.
 
Eingabezeile? Von was? Des Dropdown-Menüs? Tabelle5 oder als Name "DD", A1. Ausgegeben soll das in B1 in Tabelle4. Das Eingabefeld der Zahl, welche nachher bestimmt wieviele Dropdownmenüs untereinander erscheinen soll (Tab4, B1, C1, D1,...).

Verwirrt mich ein wenig. Mit Eingabfeld meinte ich das Feld, wo drin steht wieviele ComboBoxen erscheinen sollen. Heißt das jetzt du hast mehrere davon?

Mit nicht wissen was wir wollen hat das nichts zu tun. Menükarten sind saisonbedingt und das hier soll das anpassbar sein.

Doch eigentlich schon. Ein Tool ist normalerweisse nicht dazu da jedes Jahr bzw. Saison angepasst zu werden. Die einzigste Anpassung wäre in meinen Augen hier die Auswahl in der ComboBox, ich gehe davon aus, dass es sich hier um verfügbare Getränke/Speisen oder dergleichen handelt. Aber diese Anpassung kann man trotz dem Code auch ohne Makro-Kenntnis vornehmen, wenn das Tool entsprechend aufgebaut ist.

Ich biete dir weiterhin an es entsprechend aufzubauen/anzupassen, aber ich bräuchte dafür einfach klar definierten Input.
 
Ich fange von vorne an.

Auf dem vierten Tabellenblatt namens "Auto-Kalk" ist in B1 eine Zahl anzugeben. Diese wird bestimmen wieviele Boxen mit dem gleichen Inhalt auf A2, A3, A4 (also untereinander) erscheinen. Das Dropdown-Menü fängt im fünften Blatt namens DD an (A1:A5).

Erscheinen die Auswahlmenüs sollen die Einträge (1 Eintrag / Zelle auf Blatt 5 DD ab A2:A5; also vier Einträge) anschließend klickbar sein. Ist der Eintrag ausgewählt soll aus dem dritten Blatt "Einzelmenüs" dann der jeweilige Preis herausgezogen werden. Sprich Menü1 soll dann aus Blatt 3 "Einzelmenüs" aus J17 ziehen usw.
 
Ich hab' mal ein Beispiel gemacht wie ich es mir etwa vorstelle und mich dabei an ein paar Angaben von dir orientiert. Das Tabellenblatt DD habe ich dabei bewusst weggelassen.
 

Anhänge

  • Menü.zip
    9,9 KB · Aufrufe: 54
Vielen Dank. In deiner File funktionierts, passe ich es an (oder versuche es), klappt es wieder nicht. Eigentlich müsste ich nur Speisen in Gerichtname umwandeln und die Spalte anpassen, brauche ich aber (glaube ich) nicht, da die ganze Matrix ja verwendet wird oder wird irgendwas spezifiziert irgendwo? Sprich nur Spalte J oder dergleichen? Versuche es nur zu verstehen da ich auch mal unabhängig sowas machen möchte und verstehen will.
 
Eigentlich müsste ich nur Speisen in Gerichtname umwandeln und die Spalte anpassen, brauche ich aber (glaube ich) nicht, da die ganze Matrix ja verwendet wird oder wird irgendwas spezifiziert irgendwo?

Ja, es ist etwas außerhalb des Codes definiert, der benannte Bereich. Den Benannten Bereich musst du für die Spalte J abändern. Das machst du unter Einfügen --> Namen --> Definieren
 
Ist das da wo
Code:
For I =
im Makro-Code steht? Muss da dann
Code:
For J =
stehen. Entschuldigt die vielleicht etwas "unsinnige" Fragerei, versuch das nur zu verstehen. Sonst blicke ich da keine andere aus meine Sicht sinnige Anpassungsmöglichkeit. Wofür
Code:
Cells(I, 3).FormulaR1C1 = "=VLOOKUP(RC[-2],Einzelmenüs!R2C2:R1001C3,2,FALSE)"
?
Und wie definiere ich einen Namen in 2010? Da muss ich ja nur rechter Mausklick und Namen der Zelle definieren, richtig? Das habe ich schon, klappt aber dennoch nicht.

Code sieht wie folgt aus:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row = 1 And Target.Column = 2 Then
        If IsNumeric(Target.Text) Then
            Range("A2:C1001").Clear
            For I = 2 To Int(Target.Text) + 1
                With Cells(I, 1).Validation
                    .Delete
                    .Add Type:=x1ValidateList, AlertStyle:=x1ValidAlertStop, Operator:=x1Between, Formula1:="=Gerichtname"
                    .IgnoreBlank = True
                    .InputTitle = ""
                    .ErrorTitle = ""
                    .InputMessage = ""
                    .ErrorMessage = ""
                    .ShowInput = True
                    .ShowError = True
                End With
                
                Cells(I, 3).FormulaR1C1 = "=VLOOKUP(RC[-2],Einzelmenüs!R2C2:R1001C3,2,FALSE)"
            Next I
        End If
    End If
End Sub

Die Spalte wo die Inhalte für die DD-Menüs zur Auswahl des jeweiligen Menüs ausgewählt wird liegt in "Einzelmenüs" auf Spalte "A" wobei ab A3 senkrecht es dann los geht. In A3 steht dann auch "Gerichtname". Das musste ich ja im Code auch schreiben anstatt Speisen, korrekt?
 
Speisen ist der Name des Benannten Bereiches und hat nichts mit der Spaltenüberschrift zu tun. Auch in Office 2010 müsstest du den Menüpunkt unter "Einfügen" finden. Schau dort mal nach Namen definieren.
 
Zurück