Erreur d'execution 1004

Fermé
disabled30 Messages postés 3 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 30 septembre 2014 - Modifié par pijaku le 30/09/2014 à 11:02
disabled30 Messages postés 3 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 30 septembre 2014 - 30 sept. 2014 à 09:48
Bonjour,

Je suis novice en programation (2 jours d'expérience)

Mon objectif est de réaliser un filtre multicritére à partir d'une listbox.

je tape le code suivant :

Public Sub CommandButton1_Click() 

Dim Tablo() 
Dim I As Integer, Indice As Integer 

With Me.ListBox1 
  For I = 0 To .ListCount - 1 
    If .Selected(I) = True Then 
      ReDim Preserve Tablo(Indice) 
      Tablo(Indice) = .List(I) 
      Indice = Indice + 1 
    End If 
  Next I 
End With 
If Indice = 0 Then 
  Range("$B$4:$O$30").AutoFilter Field:=1 
Else 
  Range("$B$4:$O$30").AutoFilter Field:=1, Criteria1:=Tablo, Operator:=xlfiltervalues 
End If 
End Sub


Le probléme que je rencontre est le suivant si je choisi l'opérateur xland le code s'execute mais je ne filtre que 1 seul critére de ma listbox. j'ai donc changé mon opérateur xland par xlfiltervalues mais quand j'exécute j'ai le message d'erreur execution 1004 : "La méthode Autofilter de la classe range a échoué"

Je ne comprend pas pourquoi quelqu'un peut-il m'aider? (j'utilise excel 2002)

Configuration: Windows 7 / Internet Explorer 8.0

3 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
30 sept. 2014 à 08:58
Bonjour,

C'est bien
xlfiltervalues 
qu'il faut.

la seule fois ou j'ai eu l'erreur 1004, c'est quand la feuille ou doit se faire le filtre n'etait pas la feuille active. Il faut donc toujours mettre le nom la feuille devant Range(....., meme s'il n'y a qu'une feuille. Par contre une seule feuille pas eu l'erreur 1004

ex:

Worksheets("Feuil1").Range("$B$4:$O$30").AutoFilter Field:=1, Criteria1:=Tablo, Operator:=xlfiltervalues
0
disabled30 Messages postés 3 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 30 septembre 2014
Modifié par disabled30 le 30/09/2014 à 09:42
Bonjour merci du coup de main, j'ai essayé ce que tu m'as proposé mais ça ne fonctionne toujours pas :(. Je pense que ça vient peut être de la valeur que je donne à la fonction range. Par contre je ne comprends pas vraiment comment noter l'adresse. J'ai vu différente façon de faire sur les forums et ça reste encore un mystére pour moi. Je te joints mon fichier si tu peux y jeter un oeil? Je te remercie par avance.
0
disabled30 Messages postés 3 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 30 septembre 2014
30 sept. 2014 à 09:48
Je n'arrive pas à charger le fichier de mon poste de travail. J'essayerai ce midi
0