Positie van Checkbox in Excel is veranderd?

Status
Niet open voor verdere reacties.

Smirre123

Nieuwe gebruiker
Lid geworden
12 mrt 2008
Berichten
1
Hallo,

kan iemand me helpen met volgend probleem waar ik de oorzaak niet van kan vinden...

Situatieschets:
Ik heb met VBA een offerteformulier gemaakt in Excel waarbij de gebruikers kunnen kiezen welk type offerte ze wensen door 4 selectievakjes aan of uit te zetten (ze kunnen dus in feite 4 gegevensblokken tonen of verbergen).
Als gevolg worden bepaalde rijen onderaan in hetzelfde blad verborgen of getoond. In die rijen staan niet enkel cellen met tekst maar ook een heel aantal ActiveX checkboxen.
Het zijn nu net deze checkboxen die voor problemen zorgen. Ik heb hier eerder op het forum al gevonden hoe ik ze moet verbergen (Visible = False) en dit werkt prima, alleen kan ik ze blijkbaar niet op hun plaats houden wanneer het bestand wordt gesloten en achteraf opnieuw geopend.
Probleem:
Waar gaat het fout: de rijen met de checkboxen zijn verborgen (en dus ook de checkboxen zelf) wanneer ik het Excel formulier sluit. Als ik het daarna weer open en ik vink het selectievakje bovenaan mijn formulier aan zodat de rijen weer worden getoond, dan zijn de rijen wel terug zichtbaar maar de checkboxen staan nu onderaan in het formulier en allemaal op dezelfde plaats??
Het gaat echter wel goed wanneer ik het bestand opsla wanneer de rijen niet verborgen zijn! Als ik dan de selectievakjes aan en uit zet bovenaan, dan blijven de checkboxen wel mooi op hun plaats en volgen ze mooi de rijen.
Het lijkt dus alsof Excel de positie van de checkboxen niet onthoudt wanneer ze verborgen zijn en het bestand dan wordt afgesloten..

Ter info hier nog de VBA code die de rijen (en checkboxen) verbergt en weer tevoorschijn tovert:

Sub pro_SelectievakjeFinanciering_BijKlikken() 'FINANCIERING
Application.ScreenUpdating = False
If Range("AA20") = True Then
Rows("107:132").Select
Selection.EntireRow.Hidden = False
ActiveSheet.CheckBox_Verzekering.Visible = True
ActiveSheet.CheckBox_Verkeersbelasting.Visible = True
ActiveSheet.CheckBox_Eurovignet.Visible = True
ActiveSheet.CheckBox_Banden.Visible = True
ElseIf Range("AA20") = False Then
Rows("107:132").Select
Selection.EntireRow.Hidden = True
ActiveSheet.CheckBox_Verzekering.Visible = False
ActiveSheet.CheckBox_Verkeersbelasting.Visible = False
ActiveSheet.CheckBox_Eurovignet.Visible = False
ActiveSheet.CheckBox_Banden.Visible = False
End If
Range("E32").Select
Application.ScreenUpdating = True
End Sub

Alle hulp is welkom! :)
Alvast bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan