Registriert seit: 12.06.2019
Version(en): Microsoft Office Professionak Plus 2016
14.08.2019, 08:21
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 08:21 von SteBen .)
Guten Morgen, ich verzweifele gerade fast an einer simplen Wenn-Dann Formal in VBA. Folgenden Code habe ich bisher: If cmb2.Value = "others" Then cmb3.Enabled = True End If Aber trotzdem ist meine ComboBox3 immer enabled...?! Ich verstehe nur nicht warum... Bitte um Erleuchtung :) Danke vielmals
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
14.08.2019, 08:29
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 08:29 von Mase .)
Moin, welcher Eigenschaft einer ComboBox kann man den Wert "others" zuweisen? Es sei denn, cmb2 ist keine ComboBox. Wenn cmb2 <> ComboBox, dann empfehle ich, bleib Deiner Namenskonvention treu.
Registriert seit: 21.06.2016
Version(en): 2021
Hallo S..., fehlt da der Else-Zweig? Else cmb3.Enabled = False
helmutFü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.
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
14.08.2019, 11:00
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 11:26 von Mase .
Bearbeitungsgrund: Case Is = "others"
)
Hallo E...,
danke dafür.
Schreibe selbst ComboBox, meine und lese CheckBox.
@SteBen:
Erweiternd zum Else-Zweig, möchte Ich mich hiermit liebend gern mit folgenden Vorschlag korrigieren:
Code:
Select Case cmb2.Value Case Is = "others" 'Hinweis: Gross/Kleinschreibung cmb3.enabled = True Case Else cmb3.enabled = False End Select
Registriert seit: 12.06.2019
Version(en): Microsoft Office Professionak Plus 2016
Hallo zusammen,
danke für die Hinweise.
@ Marko, wenn ich Deinen Code übernehme, bekomme ich einen Systaxfehler... Excel hat ein Problem mit Zeile 2 (Case Is "others").
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
Danke fürs Feedback.
Oben hab ich es eben korrigiert.
Registriert seit: 12.06.2019
Version(en): Microsoft Office Professionak Plus 2016
Danke. Jetzt ist zwar der Syntaxfehler gelöst, aber meine cmb3 bleibt nach wie vor deaktiviert..
Angehängte Dateien
Thumbnail(s)
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
Poste doch mal den relevanten Code so, wie er in Deiner Mappe steht.
Registriert seit: 12.06.2019
Version(en): Microsoft Office Professionak Plus 2016
14.08.2019, 12:10
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 14:16 von WillWissen .
Bearbeitungsgrund: Codetags
)
Code:
Private Sub UserForm_Initialize() 'Private Sub chb1_Click() chb2 = Not chb1 'Private Sub chb2_Click() chb1 = Not chb2 MultiPage1.Value = 0 'Listeintrag hinzufügen cmb1.AddItem "XXXXXX" 'ListIndex = 0 cmb1.AddItem "Selbstanlieferung" 'ListIndex = 1 'Use drop-down list cmb1.Style = fmStyleDropDownList 'Combo box values are ListIndex values cmb1.BoundColumn = 0 'Set combo box to first entry cmb1.ListIndex = 0 cmb1.Font.Bold = True cmb1.Font.Size = 12 ... 'Use drop-down list cmb2.Style = fmStyleDropDownList 'Combo box values are ListIndex values cmb2.BoundColumn = 0 'Set combo box to first entry cmb2.ListIndex = 0 cmb2.Font.Bold = True cmb2.Font.Size = 12 'PLZ auswählen cmb3.AddItem "01" cmb3.AddItem "02" cmb3.AddItem "03" cmb3.AddItem "04" cmb3.AddItem "05" cmb3.AddItem "06" cmb3.AddItem "07" cmb3.AddItem "08" cmb3.AddItem "09" cmb3.AddItem "10" cmb3.AddItem "11" cmb3.AddItem "12" cmb3.AddItem "13" cmb3.AddItem "14" cmb3.AddItem "15" cmb3.AddItem "16" cmb3.AddItem "17" cmb3.AddItem "18" cmb3.AddItem "19" cmb3.AddItem "20" cmb3.AddItem "21" cmb3.AddItem "22" cmb3.AddItem "23" cmb3.AddItem "24" cmb3.AddItem "25" cmb3.AddItem "26" cmb3.AddItem "27" cmb3.AddItem "28" cmb3.AddItem "29" cmb3.AddItem "30" cmb3.AddItem "31" cmb3.AddItem "32" cmb3.AddItem "33" cmb3.AddItem "34" cmb3.AddItem "35" cmb3.AddItem "36" cmb3.AddItem "37" cmb3.AddItem "38" cmb3.AddItem "39" cmb3.AddItem "40" cmb3.AddItem "41" cmb3.AddItem "42" cmb3.AddItem "43" cmb3.AddItem "44" cmb3.AddItem "45" cmb3.AddItem "46" cmb3.AddItem "47" cmb3.AddItem "48" cmb3.AddItem "49" cmb3.AddItem "50" cmb3.AddItem "51" cmb3.AddItem "52" cmb3.AddItem "53" cmb3.AddItem "54" cmb3.AddItem "55" cmb3.AddItem "56" cmb3.AddItem "57" cmb3.AddItem "58" cmb3.AddItem "59" cmb3.AddItem "60" cmb3.AddItem "61" cmb3.AddItem "62" cmb3.AddItem "63" cmb3.AddItem "64" cmb3.AddItem "65" cmb3.AddItem "66" cmb3.AddItem "67" cmb3.AddItem "68" cmb3.AddItem "69" cmb3.AddItem "70" cmb3.AddItem "71" cmb3.AddItem "72" cmb3.AddItem "73" cmb3.AddItem "74" cmb3.AddItem "75" cmb3.AddItem "76" cmb3.AddItem "77" cmb3.AddItem "78" cmb3.AddItem "79" cmb3.AddItem "80" cmb3.AddItem "81" cmb3.AddItem "82" cmb3.AddItem "83" cmb3.AddItem "84" cmb3.AddItem "85" cmb3.AddItem "86" cmb3.AddItem "87" cmb3.AddItem "88" cmb3.AddItem "89" cmb3.AddItem "90" cmb3.AddItem "91" cmb3.AddItem "92" cmb3.AddItem "93" cmb3.AddItem "94" cmb3.AddItem "95" cmb3.AddItem "96" cmb3.AddItem "97" cmb3.AddItem "98" cmb3.AddItem "99" 'Use drop-down list cmb3.Style = fmStyleDropDownList 'Combo box values are ListIndex values cmb3.BoundColumn = 0 'Set combo box to first entry cmb3.ListIndex = 0 cmb3.Font.Bold = True cmb3.Font.Size = 12 Select Case cmb2.Value Case Is = "others" 'Hinweis: Gross/Kleinschreibung cmb3.Enabled = True Case Else cmb3.Enabled = False End Select End Sub
Registriert seit: 17.04.2019
Version(en): M$ 365 AfE v2009 / Office2013
14.08.2019, 12:20
(Dieser Beitrag wurde zuletzt bearbeitet: 14.08.2019, 12:28 von Mase .)
Die Select-Anweisung darf in das Change-Ereignis() der Combobox.
Somit wird der Code durchlaufen, wenn Du an der Combobox "den Wert umstellst".
In dem jetzigen Ereignis wird der Code nur einmal durchlaufen; und zwar beim initialisieren des Formulars.
Schau Dir beide Beschreibungen in der Onlinehilfe an.
Code:
Private Sub cmb3_Change() Select Case cmb2.Value Case Is = "others" 'Hinweis: Gross/Kleinschreibung cmb3.Enabled = True Case Else cmb3.Enabled = False End Select End Sub
Und das hier:
Code:
'PLZ auswählen cmb3.AddItem "01" cmb3.AddItem "02" cmb3.AddItem "03" cmb3.AddItem "04" cmb3.AddItem "05" cmb3.AddItem "06" cmb3.AddItem "07" cmb3.AddItem "08" cmb3.AddItem "09" cmb3.AddItem "10" cmb3.AddItem "11" cmb3.AddItem "12" cmb3.AddItem "13" cmb3.AddItem "14" ...
Kürzen wir wie folgt ab:
Code:
Dim i As Integer: i = 1 With cmb3 For i = 1 To 100 Step 1 If .ListCount < 9 Then .AddItem "0" & i Else .AddItem i End If Next i End With