Avant de faire un traitement sur mon fichier je souhaite=20
remettre toutes mes listes sans filtres.
=E7a marche tr=E8s bien sous Excel2000 mais en Excel97 j'ai=20
l'erreur " Erreur d'execution 1004 : La methode Range a=20
=E9chou=E9e"=20
Voici le code qui =E9choue :
Dim intlCompteur As Long
For intlCompteur =3D 3 To 10
' C'est cette ligne qui pose probl=E8me
ThisWorkbook.ActiveSheet.Columns.AutoFilter=20
Field:=3DintlCompteur
Next
Mon fichier est verrouill=E9 avec le code suivant :
' Protection de la feuille sans blocage des filtres :
ThisWorkbook.Sheets("X").EnableAutoFilter =3D True
ThisWorkbook.Sheets("X").Protect Password:=3DcstgProtect,=20
Contents:=3DTrue, UserInterfaceOnly:=3DTrue
Si vous avez un moyen de d=E9bloquer mon probl=E8me...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Vincent.
Salut ! De mémoire, il me semble qu'XL97 ne supporte pas la protection en userinterfaceonly, ou plutôt que les macros ne peuvent modifier des feuilles protégées de cette façon. Du coup, je pense que si tu déprotéges avant la boucle et que tu reprotèges derrière, ça devrait marcher... Sinon, je ne vois pas ! A+
V.
-----Message d'origine----- Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Merci d'avance
.
Salut !
De mémoire, il me semble qu'XL97 ne supporte pas la
protection en userinterfaceonly, ou plutôt que les macros
ne peuvent modifier des feuilles protégées de cette façon.
Du coup, je pense que si tu déprotéges avant la boucle et
que tu reprotèges derrière, ça devrait marcher...
Sinon, je ne vois pas !
A+
V.
-----Message d'origine-----
Avant de faire un traitement sur mon fichier je souhaite
remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai
l'erreur " Erreur d'execution 1004 : La methode Range a
échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème
ThisWorkbook.ActiveSheet.Columns.AutoFilter
Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant :
' Protection de la feuille sans blocage des filtres :
ThisWorkbook.Sheets("X").EnableAutoFilter = True
ThisWorkbook.Sheets("X").Protect Password:=cstgProtect,
Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Salut ! De mémoire, il me semble qu'XL97 ne supporte pas la protection en userinterfaceonly, ou plutôt que les macros ne peuvent modifier des feuilles protégées de cette façon. Du coup, je pense que si tu déprotéges avant la boucle et que tu reprotèges derrière, ça devrait marcher... Sinon, je ne vois pas ! A+
V.
-----Message d'origine----- Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Merci d'avance
.
Michel Gaboly
Bonjour,
Pas pu tester car à cause d'un plantage récent, je n'ai plus Excel 97 ;-((
Extrait d'une réponse récente de Papyty
If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter End If
Je ne sais si cela fonctionne avec Excel 97 et une feuille protégée, mais si oui, éviterait de devoir passer par une boucle (s'applique globalement, pour une feuille).
Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Merci d'avance
-- Cordialement,
Michel Gaboly http://www.gaboly.com
Bonjour,
Pas pu tester car à cause d'un plantage récent, je n'ai plus
Excel 97 ;-((
Extrait d'une réponse récente de Papyty
If Worksheets("Feuil1").AutoFilterMode Then
Selection.AutoFilter
End If
Je ne sais si cela fonctionne avec Excel 97 et une feuille
protégée, mais si oui, éviterait de devoir passer par
une boucle (s'applique globalement, pour une feuille).
Avant de faire un traitement sur mon fichier je souhaite
remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai
l'erreur " Erreur d'execution 1004 : La methode Range a
échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème
ThisWorkbook.ActiveSheet.Columns.AutoFilter
Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant :
' Protection de la feuille sans blocage des filtres :
ThisWorkbook.Sheets("X").EnableAutoFilter = True
ThisWorkbook.Sheets("X").Protect Password:=cstgProtect,
Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Pas pu tester car à cause d'un plantage récent, je n'ai plus Excel 97 ;-((
Extrait d'une réponse récente de Papyty
If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter End If
Je ne sais si cela fonctionne avec Excel 97 et une feuille protégée, mais si oui, éviterait de devoir passer par une boucle (s'applique globalement, pour une feuille).
Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Merci d'avance
-- Cordialement,
Michel Gaboly http://www.gaboly.com
Cette commande (Selection.AutoFilter) supprimme le mode filtre, moi je veux seulement simuler la selaction de (tous) sur chacune des listes.
Sinon elle fonctionne sur Excel mais pas dans mon cas particulier.
Merci quand même pour ces tentatives je pense que Excel 97 doit nous brider pas mal sur les possibilité d'action et comme ma macro doit fonctionner sous 97, 2000 et XP c'est encore plus dur...
Cette commande (Selection.AutoFilter) supprimme le mode
filtre, moi je veux seulement simuler la selaction de
(tous) sur chacune des listes.
Sinon elle fonctionne sur Excel mais pas dans mon cas
particulier.
Merci quand même pour ces tentatives je pense que Excel 97
doit nous brider pas mal sur les possibilité d'action et
comme ma macro doit fonctionner sous 97, 2000 et XP c'est
encore plus dur...
Cette commande (Selection.AutoFilter) supprimme le mode filtre, moi je veux seulement simuler la selaction de (tous) sur chacune des listes.
Sinon elle fonctionne sur Excel mais pas dans mon cas particulier.
Merci quand même pour ces tentatives je pense que Excel 97 doit nous brider pas mal sur les possibilité d'action et comme ma macro doit fonctionner sous 97, 2000 et XP c'est encore plus dur...
Papyty
Salut @ Tous, a écrit:
Sinon elle fonctionne sur Excel mais pas dans mon cas particulier.
Donc si If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter End If fonctionne il suffit de remettre l'autofilter pour que tous tes filtre soit à tous
If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter Selection.AutoFilter End If
ça fonctionne? -- @+ Thierry
Salut @ Tous, <anonymous@discussions.microsoft.com> a écrit:
Sinon elle fonctionne sur Excel mais pas dans mon cas
particulier.
Donc si
If Worksheets("Feuil1").AutoFilterMode Then
Selection.AutoFilter
End If
fonctionne il suffit de remettre l'autofilter pour que tous tes filtre soit
à tous
If Worksheets("Feuil1").AutoFilterMode Then
Selection.AutoFilter
Selection.AutoFilter
End If
Sinon elle fonctionne sur Excel mais pas dans mon cas particulier.
Donc si If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter End If fonctionne il suffit de remettre l'autofilter pour que tous tes filtre soit à tous
If Worksheets("Feuil1").AutoFilterMode Then Selection.AutoFilter Selection.AutoFilter End If
ça fonctionne? -- @+ Thierry
Frédéric Sigonneau
Bonsoir,
Si tu lances ta macro avec un CommandButton, mets sa propriété TakeFocusOnClick à False et re-essaye (il y a un bug répertorié spécifique à Excel 97 pour les CommandButton, qui gardent le focus par défaut, provoquant une erreur lorsque la macro lancée par leur intermédiaire cherche à agir directement sur une feuille de calcul sans l'avoir sélectionnée au préalable, ce qui fait passer le focus du bouton à la feuille).
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Merci d'avance
Bonsoir,
Si tu lances ta macro avec un CommandButton, mets sa propriété TakeFocusOnClick
à False et re-essaye (il y a un bug répertorié spécifique à Excel 97 pour les
CommandButton, qui gardent le focus par défaut, provoquant une erreur lorsque la
macro lancée par leur intermédiaire cherche à agir directement sur une feuille
de calcul sans l'avoir sélectionnée au préalable, ce qui fait passer le focus du
bouton à la feuille).
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Avant de faire un traitement sur mon fichier je souhaite
remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai
l'erreur " Erreur d'execution 1004 : La methode Range a
échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème
ThisWorkbook.ActiveSheet.Columns.AutoFilter
Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant :
' Protection de la feuille sans blocage des filtres :
ThisWorkbook.Sheets("X").EnableAutoFilter = True
ThisWorkbook.Sheets("X").Protect Password:=cstgProtect,
Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...
Si tu lances ta macro avec un CommandButton, mets sa propriété TakeFocusOnClick à False et re-essaye (il y a un bug répertorié spécifique à Excel 97 pour les CommandButton, qui gardent le focus par défaut, provoquant une erreur lorsque la macro lancée par leur intermédiaire cherche à agir directement sur une feuille de calcul sans l'avoir sélectionnée au préalable, ce qui fait passer le focus du bouton à la feuille).
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Avant de faire un traitement sur mon fichier je souhaite remettre toutes mes listes sans filtres.
ça marche très bien sous Excel2000 mais en Excel97 j'ai l'erreur " Erreur d'execution 1004 : La methode Range a échouée"
Voici le code qui échoue :
Dim intlCompteur As Long
For intlCompteur = 3 To 10
' C'est cette ligne qui pose problème ThisWorkbook.ActiveSheet.Columns.AutoFilter Field:=intlCompteur
Next
Mon fichier est verrouillé avec le code suivant : ' Protection de la feuille sans blocage des filtres : ThisWorkbook.Sheets("X").EnableAutoFilter = True ThisWorkbook.Sheets("X").Protect Password:=cstgProtect, Contents:=True, UserInterfaceOnly:=True
Si vous avez un moyen de débloquer mon problème...