[Excel VBA] Bug lors d'une modification de la propriété d'une ce ll
1 réponse
Mourne
Bonjour à tous !
J'ai un bug qui survient régulièrement sur Excel et qui devient maintenant
genant pr ma macro. En effet, j'utilise une macro qui modifie les propriétés
de l'ensemble des cellules d'une même colonne (attributs cellule "vérrouillé"
et "masqué").
La macro bug en indiquant qu'elle lui est impossible de changer la propriété
de la classe Range.
Ds le détail, en réalisant l'action "manuellement", une fenetre s'affiche et
m'indique "Nombre de formats de cellulles différents trop élevés". => Ma
macro bug donc, et ne réalise pas ce q'elle est censée réaliser.
Le plus bizarre, c'est qu'en prenant juste un nombre limité de cellules (4
ou 5) et en tentant de modifier les propriétés, et bien j'ai le même bug...
Plus bizarre encore, des fois, en prenant un nb limité, ca marche... 1 fois,
puis à nouveau ca bug...
Que faire? J'espère q j'aurai été clair ds mes explications.
voici ce q modifie la macro :
For Each elt In PlageNoNZ
If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True
Columns(elt).Hidden = True
Next
For Each elts In PlageOkNZ
If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False
If Columns(elts).Locked Then Columns(elts).Locked = False
Next
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
FFO
Salut à toi
Je ne sais pas si c'est la raison de tes déboirs mais au vu de ton code je mettrais tes lignes ainsi :
For Each elt In PlageNoNZ If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True Columns(elt).Hidden = True End If Next For Each elts In PlageOkNZ If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False End If If Columns(elts).Locked Then Columns(elts).Locked = False End If Next
La structure doit être
For Each variable in Plage If condition Then 1° conséquence 2° conséquence etc... End If Next En respectant bien la disposition des lignes (l'une en dessous de l'autre)
Peut être la solution
Dis moi !!!!
Bonjour à tous !
J'ai un bug qui survient régulièrement sur Excel et qui devient maintenant genant pr ma macro. En effet, j'utilise une macro qui modifie les propriétés de l'ensemble des cellules d'une même colonne (attributs cellule "vérrouillé" et "masqué"). La macro bug en indiquant qu'elle lui est impossible de changer la propriété de la classe Range. Ds le détail, en réalisant l'action "manuellement", une fenetre s'affiche et m'indique "Nombre de formats de cellulles différents trop élevés". => Ma macro bug donc, et ne réalise pas ce q'elle est censée réaliser.
Le plus bizarre, c'est qu'en prenant juste un nombre limité de cellules (4 ou 5) et en tentant de modifier les propriétés, et bien j'ai le même bug...
Plus bizarre encore, des fois, en prenant un nb limité, ca marche... 1 fois, puis à nouveau ca bug... Que faire? J'espère q j'aurai été clair ds mes explications.
voici ce q modifie la macro :
For Each elt In PlageNoNZ If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True Columns(elt).Hidden = True
Next For Each elts In PlageOkNZ If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False If Columns(elts).Locked Then Columns(elts).Locked = False Next
Merci d'avance pr votre aide !!!
Salut à toi
Je ne sais pas si c'est la raison de tes déboirs mais au vu de ton code je
mettrais tes lignes ainsi :
For Each elt In PlageNoNZ
If Not Columns(elt).FormulaHidden Then
Columns(elt).FormulaHidden = True
Columns(elt).Hidden = True
End If
Next
For Each elts In PlageOkNZ
If Columns(elts).FormulaHidden Then
Columns(elts).FormulaHidden = False
End If
If Columns(elts).Locked Then
Columns(elts).Locked = False
End If
Next
La structure doit être
For Each variable in Plage
If condition Then
1° conséquence
2° conséquence
etc...
End If
Next
En respectant bien la disposition des lignes (l'une en dessous de l'autre)
Peut être la solution
Dis moi !!!!
Bonjour à tous !
J'ai un bug qui survient régulièrement sur Excel et qui devient maintenant
genant pr ma macro. En effet, j'utilise une macro qui modifie les propriétés
de l'ensemble des cellules d'une même colonne (attributs cellule "vérrouillé"
et "masqué").
La macro bug en indiquant qu'elle lui est impossible de changer la propriété
de la classe Range.
Ds le détail, en réalisant l'action "manuellement", une fenetre s'affiche et
m'indique "Nombre de formats de cellulles différents trop élevés". => Ma
macro bug donc, et ne réalise pas ce q'elle est censée réaliser.
Le plus bizarre, c'est qu'en prenant juste un nombre limité de cellules (4
ou 5) et en tentant de modifier les propriétés, et bien j'ai le même bug...
Plus bizarre encore, des fois, en prenant un nb limité, ca marche... 1 fois,
puis à nouveau ca bug...
Que faire? J'espère q j'aurai été clair ds mes explications.
voici ce q modifie la macro :
For Each elt In PlageNoNZ
If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True
Columns(elt).Hidden = True
Next
For Each elts In PlageOkNZ
If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False
If Columns(elts).Locked Then Columns(elts).Locked = False
Next
Je ne sais pas si c'est la raison de tes déboirs mais au vu de ton code je mettrais tes lignes ainsi :
For Each elt In PlageNoNZ If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True Columns(elt).Hidden = True End If Next For Each elts In PlageOkNZ If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False End If If Columns(elts).Locked Then Columns(elts).Locked = False End If Next
La structure doit être
For Each variable in Plage If condition Then 1° conséquence 2° conséquence etc... End If Next En respectant bien la disposition des lignes (l'une en dessous de l'autre)
Peut être la solution
Dis moi !!!!
Bonjour à tous !
J'ai un bug qui survient régulièrement sur Excel et qui devient maintenant genant pr ma macro. En effet, j'utilise une macro qui modifie les propriétés de l'ensemble des cellules d'une même colonne (attributs cellule "vérrouillé" et "masqué"). La macro bug en indiquant qu'elle lui est impossible de changer la propriété de la classe Range. Ds le détail, en réalisant l'action "manuellement", une fenetre s'affiche et m'indique "Nombre de formats de cellulles différents trop élevés". => Ma macro bug donc, et ne réalise pas ce q'elle est censée réaliser.
Le plus bizarre, c'est qu'en prenant juste un nombre limité de cellules (4 ou 5) et en tentant de modifier les propriétés, et bien j'ai le même bug...
Plus bizarre encore, des fois, en prenant un nb limité, ca marche... 1 fois, puis à nouveau ca bug... Que faire? J'espère q j'aurai été clair ds mes explications.
voici ce q modifie la macro :
For Each elt In PlageNoNZ If Not Columns(elt).FormulaHidden Then Columns(elt).FormulaHidden = True Columns(elt).Hidden = True
Next For Each elts In PlageOkNZ If Columns(elts).FormulaHidden Then Columns(elts).FormulaHidden = False If Columns(elts).Locked Then Columns(elts).Locked = False Next