Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

ActiveX Steuerelement nach speichern weg

Forumthread: ActiveX Steuerelement nach speichern weg

ActiveX Steuerelement nach speichern weg
12.12.2012 11:01:18
Ulf
Moin, moin
Gibt es für mein Problem eine Lösung?
Im Blatt1 kann ich bestimmte Test´s über Optionsbutton (Formularsteuerelement)auswählen.
Im Blatt2 soll dieser Test dann über Kontrollkästchen (activeX Steuerelement) abgehakt werden.
Mein Problem ist, dass ein Kontrollkästchen nach dem Speichern verschwunden ist.
Der Ablauf sieht wie folgt aus:
Test 1 wird ausgewählt und auf Blatt2 ist nur noch Test1 ok zu sehen.
Die Datei wird gespeichert. Dann öffne ich die Datei erneut.
Wenn ich jetzt auf Blatt1 Test 2 auswähle, erscheint Test2 ok.
Leider ist das entsprechende Kontrollkästchen dazu jetzt verschwunden.
Muss ich die Kontrollkästchenn mit einer Zelle verknüpfen und mein Makro darauf anpassen?
Ich möchte die Optionsbutton und Kontrollkästchen gerne beibehalten.
vielen Dank im voraus.
Gruß
Ulf
https://www.herber.de/bbs/user/82974.xlsm

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
nicht nachvollziehbar
12.12.2012 11:09:45
Klaus
Hallo Ulf,
ich habe deine Datei geladen, Test 1 geclickt, auf Blatt2 geclickt, gespeichert, Blatt1 geclickt, Test 2 geclickt, Blatt 2 geclickt:
Kästchen zu sehen. Hat allerdings ne halbe sekunde gedauert (berechnungszeit?).
Grüße,
Klaus M.vdT.

AW: ActiveX Steuerelement nach speichern weg
12.12.2012 11:21:58
Rudi
Hallo,
evtl so?
Sub Optionsfeld5_Klicken()
Select Case Range("a10")
Case "Test 1"
With Sheets("Blatt2")
.Rows("14:14").Hidden = Not (.CheckBox2)
.Rows("12:12").Hidden = False
End With
Case "Test 2"
With Sheets("Blatt2")
.Rows("12:12").Hidden = Not (.CheckBox1)
.Rows("14:14").Hidden = False
End With
Case "Test 3"
With Sheets("Blatt2")
.Rows("12:12").Hidden = Not (.CheckBox1)
.Rows("14:14").Hidden = Not (.CheckBox2)
End With
Case "Reset"
With Sheets("Blatt2")
.Rows("12:14").Hidden = False
.CheckBox1 = False
.CheckBox2 = False
End With
End Select
End Sub

Gruß
Rudi

Anzeige
AW: ActiveX Steuerelement nach speichern weg
12.12.2012 11:40:37
Ulf
Hi,
@Rudi Maintaire
Nein, leider nicht, das Problem ist das Gleiche.
Wenn ich einen Test auswähle, die Datei speicher, schließe, danach wieder öffne und ein anderen Test auswähle, ist das entsprechende Kontrollkästchen weg.
@Klaus M.vdT.
hast du nach dem Speichern die Datei geschlossen und wieder geöffnet?
Gruß
Ulf

Anzeige
nein aber jetzt - einwand zurückgezogen
12.12.2012 11:46:55
Klaus
Hallo Ulf,
nach speichern verschwindet auch bei mir ein Kontrollkästchen. Ich gehe jetzt nicht tiefer in die Analyse, vermute aber dass es an dee "Move and Size with cells" Eigenschaft in verbindung mit dem Ausblenden von ganzen Zeilen liegt.
Ich meine Rudi, ist da bereits auf dem richtigen Weg, stattdessen mit der "visible" Eigenschaft der Komponenten zu hantieren. Ich übergebe das Zepter mal an ihn :-)
Grüße,
Klaus M.vdT.

Anzeige
da is nix weg. owT
12.12.2012 11:55:34
Rudi

AW: da is nix weg. owT
12.12.2012 12:16:20
Ulf
:-(
Schade, bei mir schon. Das Makro von Rudi ist für mich verständlich.
Warum es bei mir nicht läuft versteh ich nicht, bestimmt ein Anwenderfehler.
Damit bleibe ich wohl mit meinem Problem sitzen.
Gruß
Ulf

AW: da is nix weg. owT
12.12.2012 12:40:22
Rudi
Hallo,
was willst du eigentlich erreichen?
Das muss doch einen tieferen Sinn haben.
Übrigens würde ich nicht Formular- und ActiveX-Steuerelemente mischen.
Gruß
Rudi

Anzeige
AW: da is nix weg. owT
12.12.2012 13:32:15
Ulf
Hi,
Die Orginaldatei ist umfangreicher (1MB).
Auf Blatt1 sind mehrere Optionen auswählbar u.a. ob man einen Test1, 2, oder 3 durchführt.
Blatt2 kommt viel weiter hinten und ist eine Art Kontrolle wo noch einmal selbst kontrolliert werden soll, ob der ausgewählte Test gemacht wurde. Es kann dann vorkommen, das zu einem späteren Zeitpunkt der andere Test durchgeführt werden muss. Um Verwechslungen auszuschliesen sollen halt die anderen Zeilen und Kontrollkästchen dann ausgeblendet werden.
Der Mix aus Formular und ActiveX-Steuerelementen macht mich auch nicht glücklich.
Ich wusste mir aber damals nicht anders zu helfen.
Ich könnte das Orginalmakro posten, weiss aber nicht ob sich das jmd antun möchte durchzusehen.
Gruß
Ulf

Anzeige
AW: da is nix weg. owT
16.12.2012 07:33:27
schauan
Hallo Ulf,
ich konnte das Problem bei mir auch nicht nachvollziehen.
Rudi's code schaut zum Ausblenden nicht auf die Optionbuttons, sondern auf die Chackboxen. Ich habe jetzt allerdings nicht gesehen, dass diese von den Optionbuttons beeinflusst werden. Wenn Du also auf Blatt1 selbige drückst, dann bleiben die Checkboxen wie sie sind und nichts ändert sich.
Da im code nach wie vor die Zeilen ausgeblendet werden, glaube ich nicht, dass sich am Problem etwas ändert :-(.
Die Chaeckboxen könntest Du z.B. so ausblenden:
Sheets("Blatt2").Shapes("CheckBox1").Visible = False
oder kürzer in Deinem With-Bereich:
.CheckBox1.Visible = False
 Hoffe, geholfen zu haben. Grüße, André aus G in T  (xls 97-2013)

Anzeige
AW: da is nix weg. owT
17.12.2012 11:23:22
Ulf
Moin,
Das kann ich nicht glauben, excel kann etwas nicht?
Wenn mein Code so aussieht, ist alles ok.
Sub Optionsfeld5_Klicken()
Select Case Range("a10")
Case "Test 1"
With Sheets("Blatt2")
.CheckBox1.Visible = True
.CheckBox2.Visible = False
End With
Case "Test 2"
With Sheets("Blatt2")
.CheckBox1.Visible = False
.CheckBox2.Visible = True
End With
Case "Test 3"
With Sheets("Blatt2")
.CheckBox1.Visible = False
.CheckBox2.Visible = False
End With
Case "Reset"
With Sheets("Blatt2")
.CheckBox1.Visible = True
.CheckBox2.Visible = True
End With
End Select
End Sub

Sobald ich aber Zeilen mit ausblenden möchte, dann geht´s nicht.
Ich probier noch dies und das, vielleicht finde ich noch eine Lösung.
Gruß
Ulf
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

ActiveX Steuerelemente in Excel: Probleme und Lösungen


Schritt-für-Schritt-Anleitung

  1. Erstelle ein neues Excel-Dokument und füge zwei Blätter hinzu: Blatt1 und Blatt2.
  2. Füge Optionsbuttons auf Blatt1 hinzu. Diese dienen zur Auswahl der Tests (z.B. Test 1, Test 2, Test 3).
  3. Füge Kontrollkästchen (ActiveX-Steuerelemente) auf Blatt2 hinzu, um die Tests abzuhaken.
  4. Verknüpfe die Kontrollkästchen mit den Zellen auf Blatt2, um sicherzustellen, dass sie beim Speichern und Schließen der Datei sichtbar bleiben.
    • Rechtsklicke auf das Kontrollkästchen und wähle "Steuerelement formatieren".
    • Unter dem Reiter "Steuerung" kannst du die Zelle für die Verknüpfung angeben.
  5. Füge ein Makro hinzu, das die Sichtbarkeit der Kontrollkästchen steuert. Beispiel:
    Sub Optionsfeld5_Klicken()
       Select Case Range("A10")
           Case "Test 1"
               With Sheets("Blatt2")
                   .CheckBox1.Visible = True
                   .CheckBox2.Visible = False
               End With
           Case "Test 2"
               With Sheets("Blatt2")
                   .CheckBox1.Visible = False
                   .CheckBox2.Visible = True
               End With
           Case "Test 3"
               With Sheets("Blatt2")
                   .CheckBox1.Visible = False
                   .CheckBox2.Visible = False
               End With
           Case "Reset"
               With Sheets("Blatt2")
                   .CheckBox1.Visible = True
                   .CheckBox2.Visible = True
               End With
       End Select
    End Sub

Häufige Fehler und Lösungen

  • Kontrollkästchen verschwinden nach dem Speichern:

    • Stelle sicher, dass die Kontrollkästchen nicht mit der Option "Bewege und Größe mit Zellen" verknüpft sind. Überprüfe die Eigenschaften der Kontrollkästchen.
  • Makro funktioniert nicht wie gewünscht:

    • Vergewissere dich, dass das Makro korrekt mit den Kontrollkästchen und den Optionsbuttons verknüpft ist.
    • Überprüfe die Sichtbarkeit der Kontrollkästchen im Code, vor allem, wenn Zeilen ausgeblendet werden.

Alternative Methoden

  • Verwende Excel Filter Steuerelemente anstelle von ActiveX-Steuerelementen. Diese sind einfacher zu handhaben und verursachen weniger Probleme.
  • Nutze eine separate Tabelle, um die Auswahl der Tests und die entsprechenden Kontrollkästchen zu verwalten. Dies kann die Übersichtlichkeit erhöhen.

Praktische Beispiele

  1. Tests auswählen und kontrollieren:

    • Wenn du Test 1 auswählst, sollte nur das Kontrollkästchen für Test 1 sichtbar sein.
    • Wenn du Test 2 auswählst, wird das Kontrollkästchen für Test 2 sichtbar, während Test 1 ausgeblendet wird.
  2. Makro zum Ausblenden der Zeilen:

    Sub Ausblenden()
       With Sheets("Blatt2")
           .Rows("12:14").Hidden = True
           .CheckBox1.Visible = False
           .CheckBox2.Visible = False
       End With
    End Sub

Tipps für Profis

  • Mische keine Formular- und ActiveX-Steuerelemente. Halte dich entweder an das eine oder das andere, um Komplikationen zu vermeiden.
  • Verwende die Visible-Eigenschaft für eine bessere Kontrolle über die Sichtbarkeit der Steuerelemente.
  • Teste deine Makros regelmäßig, um sicherzustellen, dass sie die gewünschten Ergebnisse liefern, insbesondere nach Änderungen.

FAQ: Häufige Fragen

1. Warum verschwinden meine ActiveX-Steuerelemente nach dem Speichern? Es kann an der "Bewege und Größe mit Zellen"-Eigenschaft liegen oder daran, dass die Sichtbarkeit der Steuerelemente nicht korrekt im Makro eingestellt ist.

2. Wie kann ich die Sichtbarkeit der Kontrollkästchen festlegen? Nutze die Visible-Eigenschaft in deinem Makro, um die Sichtbarkeit der Kontrollkästchen basierend auf der Auswahl des Tests zu steuern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige