VBA erreur d'exécution 1004 la méthode range de l'objet _global

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

RomainD

XLDnaute Nouveau
Bonjour à tous,

Tout d'abord merci de me lire.

Je suis débutant sur VBA et je sollicite votre aide suite à une erreur de macro sur Excel 10

Sur une feuille excel, j'ai affecté une macro par liste déroulante afin de masquer certaines lignes et colonnes.
Je ne parviens pas à faire exécuter mes macros et pour chacune d'entre elle j'ai le signal d'erreur suivant:

Erreur d'execution "1004"
la méthode "range" de l'objet" _global " a échoué.

Pouvez-vous m'indiquer où est-ce que j'ai commis des erreurs ?

Merci d'avance pour votre aide.

Pour la macro 1
Sub Macro1()
'
' Macro1 Macro

If Range(C9) = "TOUS" Then
Cells.Select
Selection.EntireRow.Hidden = False
End If

If Range(C9) = "AFFECTATION DES RESSOURCES" Then

Rows("23:169").Select
Selection.EntireRow.Hidden = True
ActiveWindow.SmallScroll Down:=-10
End If

If Range(C9) = "RECRUTEMENT" Then

Range("12:22,55:83,84:169").Select
Range("A84").Activate
Selection.EntireRow.Hidden = True
End If

If Range(C9) = "FORMATION" Then
Range("12:54,84:169").Select
Range("A84").Activate
Selection.EntireRow.Hidden = True
End If


If Range(C9) = "MOBILITE" Then
Range("12:83,111:169").Select
Range("A111").Activate
Selection.EntireRow.Hidden = True
End If

If Range(C9) = "DEPART" Then
Range("12:110,135:169").Select
Range("A135").Activate
Selection.EntireRow.Hidden = True
End If

If Range(C9) = "APPRECIATION" Then
Rows("12:134").Select
Selection.EntireRow.Hidden = True
End If

End Sub



Pour la macro 2


Sub Macro9()
'
' Macro9 Macro

If Range(G7) = "TOUTES" Then

Selection.EntireRow.Hidden = False
Range("D10").Select
End If

If Range(G7) = "N-1" Then

Columns("F:W").Select
Selection.EntireColumn.Hidden = True
End If

If Range(G7) = "N" Then
Range("E11,D:E,L:W").Select
Selection.EntireColumn.Hidden = True
End If

If Range(G7) = "N+1" Then
Range("D:K,R:W").Select
Selection.EntireColumn.Hidden = True
End If

If Range(G7) = "N+2" Then
Columns("D:Q").Select
Selection.EntireColumn.Hidden = True
End If

End Sub
 
Re : VBA erreur d'exécution 1004 la méthode range de l'objet _global

Merci pour votre réponse rapide

Oui, cela surligne :
- Sub Macro1()" et If Range(C9) = "TOUS" Then pour la macro 1
- Sub Macro9() If Range(G7) = "TOUTES" Then pour la macro 9

mais je ne sais pas quoi faire de plus...
 
Re : VBA erreur d'exécution 1004 la méthode range de l'objet _global

Re bonjour,

J'ai toujours un souci,

Je ne parviens a exécuter la macro qu'une fois. Par exemple, je clique la première fois sur "RECRUTEMENT", les lignes vont apparaître, mais si je veux ensuite passer directement à "MOBILITE", plus rien n’apparaît et je suis obligé de repasser à chaque fois en cliquant sur "TOUS".
A quoi cela est du ?


Sub Macro37()
'
' Macro37 Macro
'
If Range("C215") = ("TOUS") Then

Cells.Select
Selection.EntireRow.Hidden = False
Range("A7").Select
End If

If Range("C215") = ("AFFECTATION DES RESSOURCES") Then
Rows("16:162").Select
Selection.EntireRow.Hidden = True
End If

If Range("C215") = ("RECRUTEMENT") Then

Range("9:15,48:162").Select
Selection.EntireRow.Hidden = True
End If

If Range("C215") = ("FORMATION") Then
Rows("9:29").Select
Range("9:47,77:162").Select
Range("A77").Activate
Selection.EntireRow.Hidden = True
End If

If Range("C215") = ("MOBILITE") Then
Rows("9:76").Select
Range("9:76,104:162").Select
Range("A104").Activate
Selection.EntireRow.Hidden = True
End If

If Range("C215") = ("DEPART") Then
Rows("9:103").Select
Range("9:103,128:162").Select
Range("A128").Activate
Selection.EntireRow.Hidden = True
End If

If Range("C215") = ("APPRECIATION") Then
Rows("9:127").Select
Selection.EntireRow.Hidden = True

End If


End Sub
 
Re : VBA erreur d'exécution 1004 la méthode range de l'objet _global

Bonjour,

J'espère que tu as Excel 2007 ou 2010

Clique sur le mot désiré et ton code associé s'exécute.

G

P.S. J'ai ajouté une version 2003
 

Pièces jointes

Dernière édition:
Re : VBA erreur d'exécution 1004 la méthode range de l'objet _global

Merci.. Mais toujours le même souci. Je suis obligé de recliquer sur tous à chaque fois après avoir cliqué une première fois.
N'y a t-il pas une histoire de "Else" quelque part?

Je pense qu'il manque une étape entre chaque if. mais quoi?
 

Pièces jointes

Re : VBA erreur d'exécution 1004 la méthode range de l'objet _global

Bonjour,

Voir dans le fichier joint, les deux macros qui se basent sur des plages de cellules ou colonnes nommées (voir dans Formules/Gestionnaire de noms).

A+
Bonjour Gelinotte, Robert😀
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
511
Réponses
7
Affichages
163
Retour