Disparition de cases à cocher ActiveX
Résolu/Fermé
Ereinion
-
24 mai 2013 à 10:28
Kayma2t Messages postés 5 Date d'inscription mercredi 17 août 2016 Statut Membre Dernière intervention 30 août 2016 - 30 août 2016 à 16:47
Kayma2t Messages postés 5 Date d'inscription mercredi 17 août 2016 Statut Membre Dernière intervention 30 août 2016 - 30 août 2016 à 16:47
A voir également:
- Disparition de cases à cocher ActiveX
- Case à cocher outlook - Forum Outlook
- Cases à cocher - Guide
- Comment cocher une case sans souris ✓ - Forum Windows
- Case à cocher word mac ✓ - Forum Word
- Case à cocher word ne fonctionne pas ✓ - Forum Word
2 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
Modifié par pilas31 le 24/05/2013 à 12:40
Modifié par pilas31 le 24/05/2013 à 12:40
Bonjour,
Si on regarde un peu dans différents forum on voit que c'est un bug d'Excel 2010 ou peut-être dans d'autres versions aussi.
En fait lorsque l'on masque les lignes qui contiennent des contrôles activeX et que l'on sauvegarde, ils disparaissent.
En réalité, j'ai testé, ils ne disparaissent pas mais la hauteur passe à 0 et la position en hauteur est modifiée.
D'où la solution de contournement (en attendant une correction de la part de Microsoft) que je propose est de stoker ces infos et de les restituer. Grace à des macros que l'on peut d'ailleurs activer automatiquement à la fermeture puis à l'ouverture du classeur.
Le principe est simple je mémorise la position et la hauteur dans la feuille "CTRL" puis je restitue.
J'ai testé cela fonctionne.
A+
Cordialement,
Si on regarde un peu dans différents forum on voit que c'est un bug d'Excel 2010 ou peut-être dans d'autres versions aussi.
En fait lorsque l'on masque les lignes qui contiennent des contrôles activeX et que l'on sauvegarde, ils disparaissent.
En réalité, j'ai testé, ils ne disparaissent pas mais la hauteur passe à 0 et la position en hauteur est modifiée.
D'où la solution de contournement (en attendant une correction de la part de Microsoft) que je propose est de stoker ces infos et de les restituer. Grace à des macros que l'on peut d'ailleurs activer automatiquement à la fermeture puis à l'ouverture du classeur.
Sub mémoriser() Dim Ctrl As Object Lig = 2 For Each Ctrl In ActiveSheet.Shapes Sheets("CTRL").Cells(Lig, 1) = Ctrl.Name Sheets("CTRL").Cells(Lig, 3) = Ctrl.Top Sheets("CTRL").Cells(Lig, 4) = Ctrl.Height Lig = Lig + 1 Next Ctrl End Sub Sub restituer() Dim Ctrl As Object Lig = 2 With Sheets("CTRL") While .Cells(Lig, 1) <> "" ActiveSheet.Shapes(.Cells(Lig, 1)).Top = .Cells(Lig, 3) ActiveSheet.Shapes(.Cells(Lig, 1)).Height = .Cells(Lig, 4) Lig = Lig + 1 Wend End With End Sub
Le principe est simple je mémorise la position et la hauteur dans la feuille "CTRL" puis je restitue.
J'ai testé cela fonctionne.
A+
Cordialement,
Merci pour cette réponse : j'essai de retrouver tous mes activeX masqué pour tester.
Par contre j'ai plusieurs feuilles concernées : faut il créer autant de feuilles type CTRL que de feuilles à "protéger ?
Par contre j'ai plusieurs feuilles concernées : faut il créer autant de feuilles type CTRL que de feuilles à "protéger ?
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
27 mai 2013 à 10:16
27 mai 2013 à 10:16
Bonjour,
Non , pas forcément. On peut par exemple dans la feuille CTRL ajouter une colonne avec le nom de la feuille et légèrement transformer mes macros pour tenir compte du nom de la feuille.
Non , pas forcément. On peut par exemple dans la feuille CTRL ajouter une colonne avec le nom de la feuille et légèrement transformer mes macros pour tenir compte du nom de la feuille.
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
30 mai 2013 à 17:29
30 mai 2013 à 17:29
Bonjour,
Peut-on considérer le sujet comme résolu ?
Peut-on considérer le sujet comme résolu ?
Bonjour,
Tout d'abord merci pour l'aide. Finalement j'ai opté pour une autre solution que celle proposée. J'ai dans un premier temps effectué un réglage de tous les objets pour leur rendre la position et la taille initiale.
Ensuite, j'ai effectué 2 macro :
- la première fait réapparaitre à la fermeture du fichier toutes les lignes cachées (afin d'éviter le désagrément des pertes de position et de taille des activeX)
- la deuxième se lance dès l'ouverture du fichier et masque toutes les lignes ne faisant pas partie du sommaire de chaque feuilles.
Pour l'instant cela me donne l'impression de bien fonctionner.
Je considère donc le sujet comme résolu.
Tout d'abord merci pour l'aide. Finalement j'ai opté pour une autre solution que celle proposée. J'ai dans un premier temps effectué un réglage de tous les objets pour leur rendre la position et la taille initiale.
Ensuite, j'ai effectué 2 macro :
- la première fait réapparaitre à la fermeture du fichier toutes les lignes cachées (afin d'éviter le désagrément des pertes de position et de taille des activeX)
- la deuxième se lance dès l'ouverture du fichier et masque toutes les lignes ne faisant pas partie du sommaire de chaque feuilles.
Pour l'instant cela me donne l'impression de bien fonctionner.
Je considère donc le sujet comme résolu.
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
30 mai 2013 à 23:26
30 mai 2013 à 23:26
Oui, effectivement c'est une très bonne solution.
gosr2603
Messages postés
6
Date d'inscription
jeudi 7 mai 2015
Statut
Membre
Dernière intervention
5 juin 2015
5 juin 2015 à 20:57
5 juin 2015 à 20:57
Bonjour Ereinion,
j'ai le même problème que vous.
j'ai essayer de faire votre solution, mais je n'y arrive pas comment avez-vous fait.
Merci beaucoup d'avance.
Raphael
j'ai le même problème que vous.
j'ai essayer de faire votre solution, mais je n'y arrive pas comment avez-vous fait.
Merci beaucoup d'avance.
Raphael