Excel 2003 - Erreur sur macro

Résolu/Fermé
Utilisateur anonyme - 5 juin 2008 à 23:29
 Utilisateur anonyme - 6 juin 2008 à 13:23
Bonsoir,

J'aurais besoin d'aide pour une macro que j'ai faite sur un fichier indépendant du fichier à mettre à jour.
J’ai ensuite voulu faire un bouton (avec la boîte à outil contrôle /visualiser le code), j’ai collé le texte entre Sub et end sub. En testant le bouton, il me dit :
« Erreur d’exécution 1004
La commande n’a pu être exécutée avec la plage spécifiée. Sélectionnez une seule cellule dans la plage et reessayez
. »
Et l’erreur pointe bien sur la plage Range (B2 :B3000………)

Or ma plage est bonne. La macro s’exécute bien s’exécute correctement avec Alt+F8.

Sub FiltreFournisseur()
'
' FiltreFournisseur Macro
' Macro enregistrée le 05/06/2008 par
'
Windows("MonFichieràMettreàJour.xls").Activate
Range("B2:B3000").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"H2:H30"), Unique:=True
ActiveWindow.SmallScroll Down:=-24

End Sub

Est-ce que ces éléments vous permettent de me dépanner ?
Merci d’avance.

A voir également:

5 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
6 juin 2008 à 00:00
bonjour

Je n'ai pas tous les éléments pour tester mais je pense qu'il te faut préciser la feuille concernée ("feuil1" à adapter)
Sub FiltreFournisseur()
'
' FiltreFournisseur Macro
' Macro enregistrée le 05/06/2008 par
'
Windows("MonFichieràMettreàJour.xls").Activate
Sheets("feuil1").Range("B2:B3000").AdvancedFilter Action:=xlFilterCopy,  _
CopyToRange:=Sheets("feuil1").Range("H2:H30"), Unique:=True
End Sub
0
Utilisateur anonyme
6 juin 2008 à 01:05
Bonsoir Gbinforme, ou ce sera plutôt bonjour,

Pour pouvoir mettre un exemple, j'ai tronqué et "anonymisé" mon fichier et du coup j'ai tout refait depuis le début. Et j'ai la même erreur.
Cette ligne avec "feuil1" qui s'appelle maintenant "MacroFiltreFournisseur" : quand je visualise le code avec la boîte à outils, elle n'y est pas. Quand je fais modifier avec ALT+F8, elle y est.
Bon, sache que je débute en macro et c'est ma première !... Mais, là j'en ai vraiment besoin, et indépendante du fichier qui doit être déployé sur un Intranet, donc sans macro à cause des niveaux de sécurité des postes. Il n'y a qu'un utilisateur qui aura besoin de cette petite macro avec un accès pour modifier. Je t'explique juste pour te situer mon besoin.

Je mets le fichier à mettre à jour :
http://www.cijoint.fr/cjlink.php?file=cj200806/cijH1BwwLY.xls
Le fichier avec bouton macro :
http://www.cijoint.fr/cjlink.php?file=cj200806/cijLGmtGiY.xls

Merci de regarder.
0
Utilisateur anonyme
6 juin 2008 à 08:42
Bonjour,

J'ai relu ton message ce matin. J'ai adapté en précisant la feuille. Mais j'ai une erreur 9 maintenant.
Est-ce comme ceci qu'il fallait faire ?
le fichier avec la macro :
http://www.cijoint.fr/cjlink.php?file=cj200806/cijLGmtGiY.xls

Merci d'avance.
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
6 juin 2008 à 10:02
bonjour

J'ai récupéré tes fichiers et j'ai seulement modifié ainsi ta macro pour qu'elle fonctionne
Private Sub CommandButton1_Click()
'
' FiltreFournisseur Macro
' Macro enregistrée le 05/06/2008 par
'

'
    Windows("TestBouton.xls").Activate
    ActiveSheet.Range("B2:B3000").AdvancedFilter Action:=xlFilterCopy, _
        CopyToRange:=ActiveSheet.Range("H2:H30"), Unique:=True
 
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
6 juin 2008 à 13:23
Parfait, ça marche très bien avec ta correction.
Un grand merci pour ton aide Gbinforme.

Très bonne journée.
0