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

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
 

RomainD

XLDnaute Nouveau
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...
 

RomainD

XLDnaute Nouveau
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
 

Gelinotte

XLDnaute Accro
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

  • Classeur1.xlsm
    15.9 KB · Affichages: 142
  • Classeur1.xlsm
    15.9 KB · Affichages: 143
  • Classeur1.xlsm
    15.9 KB · Affichages: 151
  • Classeur2003.xls
    35 KB · Affichages: 111
  • Classeur2003.xls
    35 KB · Affichages: 117
  • Classeur2003.xls
    35 KB · Affichages: 117
Dernière édition:

RomainD

XLDnaute Nouveau
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

  • audit social romain bis.xlsm
    65 KB · Affichages: 84
G

Guest

Guest
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:D
 
Dernière modification par un modérateur:

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87