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.

Kontrollkästchen
#1
Guten Tag

In der Zelle B20 hab ich vier Kontrollkästchen. Diese möchte ich,
solange in der Zelle I12 der Wert 0.000 steht ausblenden. Wie
mache ich dies? Ich habe in der Zelle B6 und B7 noch zwei weitere
Kontrollkästchen, welche nicht ausgeblendet werden sollen.

Ps.: Ich habe absolut keine Erfahrung mit Makros, wäre also dankbar
um eine detailierte Schritt für Schritt Anleitung.

Besten Dank für eure Unterstützung!

Gruss
Nigg


Angehängte Dateien
.xlsx   Rezept_überarbeitet_Version6.xlsx (Größe: 701,7 KB / Downloads: 6)
Antworten Top
#2
Hi Nigg,

schau mal in diesen Link. Das Thema scheint genau dein Problem betreffen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#3
Hallo Nigg,

ich habe das Makro mal auf Deine Bedürfnisse angepasst. Es setzt die Kästchen 4 bis 7 sichtbar, wenn Du in I12 0 einträgst, und unsichtbar, wenn Du etwas anderes reinschreibst. Das Makro fügst Du in das Tabellenblattmodul von Fert 1 ein. Dazu wechselst Du mit ALT + F11 in den VBA-Editor. Dort siehst Du auf der linken Seite den Projektexplorer, in dem u.a. Deine Datei steht. Sollte diese nicht "aufgeklappt" sein kannst Du darauf doppeklicken und siehst dann die einzelnen Bestandteile, z.B.
Tabelle1 (Fert 1). Auf diese klickst Du wieder und daz zugehörige Modulblatt geht auf. Kontrollieren kannst Du das in der Titelzeile, dort sollte unter anderem Tabelle1 (code) stehen. Dort fügst Du den code dann ein.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'Variablendeklarationen
'Boolsch - Trigger fuer Anzeige
Dim bVisible As Boolean
'Wenn die Zieladresse nicht I12 ist, dann Makro verlassen
If Target.Address <> "$I$12" Then Exit Sub
'Trigger fuer Anzeige auf True setzen, wenn I12 0 ist
bVisible = (Target.Value = 0)
'Schleife ueber die Kontrollkaestchen 4 bis 7
For icnt = 4 To 7
  'Kontrollkaestchen ein/ausblenden
  ActiveSheet.Shapes("Kontrollkästchen " & icnt).Visible = bVisible
'Ende Schleife ueber die Kontrollkaestchen 4 bis 7
Next
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Hallo Nigg,

da in I12 ja eine Formel steht, ist Andrés Makro nicht unbedingt zielführend.
Mein Vorschlag ist folgendes Makro, das in dasselbe Modul kommt:

Code:
Private Sub Worksheet_Calculate()
 If Range("I12").Value = 0 Then
   Me.CheckBoxes("Check Box 4").Visible = False
   Me.CheckBoxes("Check Box 5").Visible = False
   Me.CheckBoxes("Check Box 6").Visible = False
   Me.CheckBoxes("Check Box 7").Visible = False
   Me.CheckBoxes("Check Box 4").Value = False
   Me.CheckBoxes("Check Box 5").Value = False
   Me.CheckBoxes("Check Box 6").Value = False
   Me.CheckBoxes("Check Box 7").Value = False
 Else
   Me.CheckBoxes("Check Box 4").Visible = True
   Me.CheckBoxes("Check Box 5").Visible = True
   Me.CheckBoxes("Check Box 6").Visible = True
   Me.CheckBoxes("Check Box 7").Visible = True
 End If
End Sub

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Nigg
Antworten Top
#5
Hallo Uwe,

ja, so ist es. Allerdings sollten die Werte doch nicht zurückgesetzt werden ? Das Ausblenden geschieht ja auch unabhängig vom Inhalt - Eventuell sollte man die dann nur ausblenden, wenn sie angehakt sind. Mal sehen, was Nigg dazu schreibt.

Hier mal mein korrigierter Ansatz:

Code:
Private Sub Worksheet_Calculate()
'Schleife ueber die Kontrollkaestchen 4 bis 7
For icnt = 4 To 7
  'Kontrollkaestchen ein/ausblenden
  ActiveSheet.Shapes("Kontrollkästchen " & icnt).Visible = (Range("I12").Value = 0)
'Ende Schleife ueber die Kontrollkaestchen 4 bis 7
Next
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#6
Guten Tag Zusammen

Besten Dank vielmals für eure Unterstützung, mit dem Makro von Uwe funktioniert dies, genau wie gewüscht.
Wünsche euch noch ein schönes Wochenende!

Gruss
Nigg
Antworten Top


Gehe zu:


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