Erreur d'exécution '-2147417848' lors d'un columnwidth dans Excel 2010 [Résolu]

Siefch1 - 4 févr. 2013 à 17:00 - Dernière réponse : MarcPL 172 Messages postés jeudi 8 décembre 2011Date d'inscription 21 juillet 2013 Dernière intervention
- 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 !
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
3
Merci
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.

Merci Siefch1 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de Siefch1
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscriptionModérateurStatut 28 août 2015 Dernière intervention - 4 févr. 2013 à 19:28
0
Merci
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)
Commenter la réponse de cs_Jack
0
Merci
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
Commenter la réponse de Siefch1
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 5 févr. 2013 à 08:53
0
Merci
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.
Commenter la réponse de ucfoutu
MarcPL 172 Messages postés jeudi 8 décembre 2011Date d'inscription 21 juillet 2013 Dernière intervention - 5 févr. 2013 à 11:54
0
Merci
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 !
Commenter la réponse de MarcPL
MarcPL 172 Messages postés jeudi 8 décembre 2011Date d'inscription 21 juillet 2013 Dernière intervention - 5 févr. 2013 à 12:06
0
Merci
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 !
Commenter la réponse de MarcPL

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.