Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Checkbox | Herbers Excel-Forum


Betrifft: Checkbox von: André
Geschrieben am: 29.01.2012 00:04:40


- Hilfe zur Checkbox Nach oben

Version: Office 2003

--------------------------------------------------------------------------------

Hallo,

kann mir eventuell jemand sagen wo der Fehler im folgenden sub liegt?

Private Sub CommandButton1_Click() 
If CheckBox1.Value = True Then 
Application.Run "XXX_05" 
If CheckBox2.Value = True Then _ 
Application.Run "XXX_10" 
If CheckBox3.Value = True Then _ 
Application.Run "XXX_25" 
If CheckBox4.Value = True Then _ 
Application.Run "Plausibel" 
If CheckBox5.Value = True Then _ 
Application.Run "Parameter" 
End If 
End Sub


gedacht war es so, das die ersten drei Boxen optional sind also entweder 1 oder 2 oder 3.

Box4 und 5 sind auf Wunsch zuschaltbar auch beide zusammen

Momentan gehen nur die Kombis

Box1+4+5
Box1+4
Box1+5

Hoffe mir kann jemand helfen und Danke schon jetzt für eure Anregungen.

Grüße

André

  

Betrifft: AW: Checkbox von: fcs
Geschrieben am: 29.01.2012 02:42:36

Hallo André,

du hast die If-Bedingungen falsch geschachtelt.

Private Sub XCommandButton1_Click()
  If CheckBox1.Value = True Then
    Application.Run "XXX_05"
  ElseIf CheckBox2.Value = True Then
    Application.Run "XXX_10"
  ElseIf CheckBox3.Value = True Then
    Application.Run "XXX_25"
  End If
  If CheckBox4.Value = True Then Application.Run "Plausibel"
  If CheckBox5.Value = True Then Application.Run "Parameter"
End Sub
So sollte es funktionieren.

Gruß
Franz


  

Betrifft: AW: Checkbox von: André
Geschrieben am: 29.01.2012 11:01:06

Hallo Franz,

danke für deine Hilfe

Ja so klappt es jetzt. Bin aber in der Zwischenzeit von den Checkboxen 1-3 abgekommen und habe diese in Option Buttons gewandelt.

Jetzt habe ich folgendes Problem.

Habe jetzt Option Buttons eingefügt, diese umbenannt und im Code angepasst.
Siehe hier:

Private Sub CommandButton1_Click() 
If OptXXX_05.Value Then Call XXX_05 
If OptXXX_05.Value Then Call XXX_10 
If OptXXX_05.Value Then Call XXX_25 
If CheckBox4.Value Then Call Plausibel 
If CheckBox5.Value Then Call Parameter 
End Sub


da bekomme ich aber Variable nicht definiert und er springt
in diese zeile
If OptXXX_05.Value Then Call XXX_05

Wo mache ich den Fehler?

Danke für eure Hilfe

LG

André


  

Betrifft: AW: Checkbox von: fcs
Geschrieben am: 29.01.2012 13:12:09

Hallo André,

genaue Ursache kann ich auch nicht sagen.

Prüfe mal die Schreibweise der Namen der Optionsschaltflächen.
Auf jeden Fall muss in jeder der 3 If-Zeilen ein anderer Optionbutton-Name stehen.

Gruß
Franz


  

Betrifft: AW: Checkbox von: André
Geschrieben am: 29.01.2012 19:20:52

Hallo Franz,

habe es gefunden habe aus unwissen Option Buttons aus den Steuerelementen gewählt und nicht aus den ActiveX Steuerelementen.

Also das Problem ist gelöst.

Habe aber mittlerweile ein neues Problem,

sub ist so geblieben

Private Sub CommandButton1_Click() 
 If OptXXX_05.Value Then Call XXX_05 
 If OptXXX_10.Value Then Call XXX_10 
 If OptXXX_25.Value Then Call XXX_25 
 If CheckBox4.Value Then Call Plausibel 
 If CheckBox5.Value Then Call Parameter 
 End Sub
würde gerne vorne an noch eine zweite Ebene Option Buttons setzen.
Also einmal die Drei
If OptXXX_05.Value Then Call XXX_05
If OptXXX_10.Value Then Call XXX_10
If OptXXX_25.Value Then Call XXX_25

und über den gleichen CommandButton
noch eine zweite Optionsmöglichkeit.

Derzeit mache ich es über Checkbox, da sind aber leider mehrfachanwahlen möglich.

Hoffe man versteht die Frage und was ich meine.

Grüße

André


  

Betrifft: AW: Checkbox von: fcs
Geschrieben am: 29.01.2012 20:17:56

Hallo André,

wenn du Active-X-Optionbuttons im Tabellenblatt gruppieren willst, dann muss du mit der Eigenschaft "GroupName" arbeiten. Die Optionbuttons einer Option müssen den gleichen Groupnamen haben. Standardmäßig steht da der CodeName des Tabellenblatts, der Wert kann jedoch geändert werden, um mehrere Gruppen von Options-Schaltflächen zu erzeugen.

Im Makro sollte es dann so funktionieren:

Private Sub CommandButton1_Click()

 If OptABC_01.Value Then Call ABC_01
 If OptABC_02.Value Then Call ABC_02
 If OptABC_03.Value Then Call ABC_03
 
 If OptXXX_05.Value Then Call XXX_05
 If OptXXX_10.Value Then Call XXX_10
 If OptXXX_25.Value Then Call XXX_25
 
 If CheckBox4.Value Then Call Plausibel
 If CheckBox5.Value Then Call Parameter
End Sub
Gruß
Franz


  

Betrifft: AW: Checkbox von: André
Geschrieben am: 30.01.2012 09:11:01

Hallo Franz,


danke das war die Lösung!

Einen schönen tag noch Grüße


André


Beiträge aus den Excel-Beispielen zum Thema "Checkbox"