Siefch1
-
4 févr. 2013 à 17:00
MarcPL
Messages postés172Date d'inscriptionjeudi 8 décembre 2011StatutMembreDernière intervention21 juillet 2013
-
5 févr. 2013 à 12:06
Bonjour,
Lors de l'activate d'un onglet j'applique le code suivant :
Sub ReportingRD_Activate()
If Visu2012 = False Then
'-- réduction des colonnes 2012
Columns("B:M").ColumnWidth = 0.1
Else
'-- affichage des colonnes 2012
Columns("B:M").ColumnWidth = 10
End If
End Sub
> ça marche nickel
Par contre, j'ai créé un bouton dans l'onglet pour basculer
l'affichage avec le code suivant :
Sub Toggle_visu2012()
If Visu2012 = True Then
' bascule à False et on cache les colonnes 2012
Visu2012 = False
Columns("B:M").ColumnWidth = 0.1
Else
' bascule à True et on montre les colonnes 2012
Visu2012 = True
Columns("B:M").ColumnWidth = 10
End If
End Sub
Lorsque j'appuie sur le bouton, j'ai le message d'erreur suivant :
Erreur d'exécution '-2147417848'
La méthode columnwith a échoué
Et l'excel se ferme méchamment.
Je ne comprends pas car le code me semble correct.
Quelqu'un aurait-il une idée ?
Par avance, merci !
A voir également:
Erreur d'exécution '-2147417848' lors d'un columnwidth dans Excel 2010
En simplifiant au maximum ma macro et ma feuille, j'ai trouvé la cause du problème :
la columnwidth provoque cette erreur lorsque la colonne concernée contient un graphique sparkline !
C'est curieux car, manuellement, on peut le faire sans problème.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 4 févr. 2013 à 19:28
Salut
Bizarre.
Est-ce que ton bouton est placé sur la feuille que tu manipules ?
Je devine que oui : Vois si le bouton est attaché à une cellule - peut être que les boutons n'aiment pas être rétrécis à outrance ...
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on le partage (Socrate)
C'est un bouton de controle de formulaire (inséré depuis le menu développeur). Il est effectivement sur le bon onglet et ne se trouve pas sur les colonnes à rétrécir.
Bizarre que le formatage fonctionne sur l'activate de l'onglet et que la même méthode plante sur un click de bouton
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 févr. 2013 à 08:53
Bonjour,
1) Qu'est exactement visu2012 ? Une booléenne ? Un objet (et alors lequel) ?
2) crées-tu quelque part des objets dynamiquement dans ton appli ? Si oui : lesquels et comment ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Vous n’avez pas trouvé la réponse que vous recherchez ?
MarcPL
Messages postés172Date d'inscriptionjeudi 8 décembre 2011StatutMembreDernière intervention21 juillet 20132 5 févr. 2013 à 11:54
Sub Toggle_visu2012()
Visu2012 = Not Visu2012
Columns("B:M").ColumnWidth = IIf(Visu2012, 10, 0.1)
End Sub
Voilà de la "bascule" !
___________________________________________________________________________________________________________________
Comme la vitesse de la lumière est supérieure à celle du son, certains ont l'air brillant avant d'avoir l'air con !
MarcPL
Messages postés172Date d'inscriptionjeudi 8 décembre 2011StatutMembreDernière intervention21 juillet 20132 5 févr. 2013 à 12:06
A vérifier : le graphique est-il protégé ?
Le déprotéger pourrait résoudre le problème ...
___________________________________________________________________________________________________________________
Comme la vitesse de la lumière est supérieure à celle du son, certains ont l'air brillant avant d'avoir l'air con !