Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur sur la méthode select de la classe range

7 réponses
Avatar
excal
Bonjour,

J'ai crée la macro ci dessous, attaché à un bouton a option.
Cette macro est enregistré sous la feuille Ind.Mens
Lorsque je déclenche cette macro, j'obtiens une erreur (cf la
fleche --->> ):

Erreur d'execution 1004
La méthode Select de la classe Range a échoué

NB: la selection N25:Z27,N28:Z30,N31:Z33,N34:Z36,N37:Z39 est due à des
cellules fusionnées sur 3 lignes
NB2: j'ai excel2000

Merci pour vos explications.

===================

Private Sub OptionButton4_Click()

ActiveSheet.Unprotect password:="direct"
Range("K29:K33,AB10:AN16").Select
Selection.NumberFormat = "0.00%"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, _
password:="direct"

Sheets("Graphique mensuel").Select
ActiveSheet.Unprotect password:="direct"
--->> Range("N25:Z27,N28:Z30,N31:Z33,N34:Z36,N37:Z39").Select
Selection.NumberFormat = "0.00%"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, _
password:="direct"
Sheets("Ind.mens").Select
Range("C25").Select

End Sub

7 réponses

Avatar
papou
Bonjour excal
Inutile de sélectionner la plage :
Union(Range("N25:Z27"), Range("N28:Z30"), Range("N31:Z33"),
Range("N34:Z36"), Range("N37:Z39")).NumberFormat = "0.00%"
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1ht7q$q2e$
Bonjour,

J'ai crée la macro ci dessous, attaché à un bouton a option.
Cette macro est enregistré sous la feuille Ind.Mens
Lorsque je déclenche cette macro, j'obtiens une erreur (cf la
fleche --->> ):

Erreur d'execution 1004
La méthode Select de la classe Range a échoué

NB: la selection N25:Z27,N28:Z30,N31:Z33,N34:Z36,N37:Z39 est due à des
cellules fusionnées sur 3 lignes
NB2: j'ai excel2000

Merci pour vos explications.

================== >
Private Sub OptionButton4_Click()

ActiveSheet.Unprotect password:="direct"
Range("K29:K33,AB10:AN16").Select
Selection.NumberFormat = "0.00%"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True,
_

password:="direct"

Sheets("Graphique mensuel").Select
ActiveSheet.Unprotect password:="direct"
--->> Range("N25:Z27,N28:Z30,N31:Z33,N34:Z36,N37:Z39").Select
Selection.NumberFormat = "0.00%"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True,
_

password:="direct"
Sheets("Ind.mens").Select
Range("C25").Select

End Sub




Avatar
excal
Merci Papou

Malheureusement, j'obtiens la meme erreur:

Erreur 1004
Impossible de définir la propriété NumberFormat de la classe Range



"papou" <DesolePasDeMail> a écrit dans le message de news:
exRBQB6#
Bonjour excal
Inutile de sélectionner la plage :
Union(Range("N25:Z27"), Range("N28:Z30"), Range("N31:Z33"),
Range("N34:Z36"), Range("N37:Z39")).NumberFormat = "0.00%"
Cordialement
Pascal



Avatar
papou
Re
Attention, le code doit être sur une seule ligne sans retour à la ligne
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1i7ql$155$
Merci Papou

Malheureusement, j'obtiens la meme erreur:

Erreur 1004
Impossible de définir la propriété NumberFormat de la classe Range



"papou" <DesolePasDeMail> a écrit dans le message de news:
exRBQB6#
Bonjour excal
Inutile de sélectionner la plage :
Union(Range("N25:Z27"), Range("N28:Z30"), Range("N31:Z33"),
Range("N34:Z36"), Range("N37:Z39")).NumberFormat = "0.00%"
Cordialement
Pascal







Avatar
excal
Resalut

C'est effectivement le cas (sur une seule ligne) , mais l'erreur est la
meme.. :-((


"papou" <DesolePasDeMail> a écrit dans le message de news:
u2OQVO6#
Re
Attention, le code doit être sur une seule ligne sans retour à la ligne
Cordialement
Pascal




Avatar
papou
Dans ces conditions, tu dois avoir une protection sur ta feuille !
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1i93l$3hj$
Resalut

C'est effectivement le cas (sur une seule ligne) , mais l'erreur est la
meme.. :-((


"papou" <DesolePasDeMail> a écrit dans le message de news:
u2OQVO6#
Re
Attention, le code doit être sur une seule ligne sans retour à la ligne
Cordialement
Pascal








Avatar
excal
Resalut
Effectivement, l'autre feuille "Graphique mensuel" est protégé
Je la déprotège juste avant la modification de format par:

Sheets("Graphique mensuel").Select
ActiveSheet.Unprotect password:="direct"

Mais ce n'est peut etre pas la bonne formule....
Par exemple, j'ai essayé:

Worksheets("Graphique mensuel").Activate
au lieu de Sheets("Graphique mensuel").Select

Une autre question que je me pose.
Cette procedure "Private Sub OptionButton4_Click()" est dans la
feuil1(Ind.mens) du répertoire "Microsoft Excel Objects" de VBA
Peut etre que la feuille "Graphique mensuel" n'est pas visible là où elle
est
J'ai enlevé "Private" --> Rien n'y fait

Dois-je mettre cette procédure dans le repertoire Modules de VBA ??

Merci


"papou" <DesolePasDeMail> a écrit dans le message de news:
eyONxh6#
Dans ces conditions, tu dois avoir une protection sur ta feuille !
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1i93l$3hj$
Resalut

C'est effectivement le cas (sur une seule ligne) , mais l'erreur est la
meme.. :-((


"papou" <DesolePasDeMail> a écrit dans le message de news:
u2OQVO6#
Re
Attention, le code doit être sur une seule ligne sans retour à la
ligne



Cordialement
Pascal












Avatar
papou
Non pas forcément
Dans ce cas, si tu as des références à d'autres feuilles de ton classeur
dans le code, il faut faire référence à ces feuilles de façon complète,
c'est à dire par exemple avec :
ThisWorkbook.WorkSheets("Graphique Mensuel").unprotect("direct")

NB : Pas besoin de sélectionner une feuille pour la déprotéger
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1ic8g$5go$
Resalut
Effectivement, l'autre feuille "Graphique mensuel" est protégé
Je la déprotège juste avant la modification de format par:

Sheets("Graphique mensuel").Select
ActiveSheet.Unprotect password:="direct"

Mais ce n'est peut etre pas la bonne formule....
Par exemple, j'ai essayé:

Worksheets("Graphique mensuel").Activate
au lieu de Sheets("Graphique mensuel").Select

Une autre question que je me pose.
Cette procedure "Private Sub OptionButton4_Click()" est dans la
feuil1(Ind.mens) du répertoire "Microsoft Excel Objects" de VBA
Peut etre que la feuille "Graphique mensuel" n'est pas visible là où elle
est
J'ai enlevé "Private" --> Rien n'y fait

Dois-je mettre cette procédure dans le repertoire Modules de VBA ??

Merci


"papou" <DesolePasDeMail> a écrit dans le message de news:
eyONxh6#
Dans ces conditions, tu dois avoir une protection sur ta feuille !
Cordialement
Pascal

"excal" a écrit dans le message de
news:c1i93l$3hj$
Resalut

C'est effectivement le cas (sur une seule ligne) , mais l'erreur est
la



meme.. :-((


"papou" <DesolePasDeMail> a écrit dans le message de news:
u2OQVO6#
Re
Attention, le code doit être sur une seule ligne sans retour à la
ligne



Cordialement
Pascal