Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Filtre sous vba. Les mystères d'Excel.

13GIBE59

XLDnaute Accro
Bonjour le forum, bonjour à toutes et à tous.

Aujourd’hui, mon problème est relatif à un mystère de plus d’Excel, car mon fichier marche très bien mais seulement sous certaines conditions.
Je vais essayer d’être concis, et je m’excuse par avance si mon message paraît un peu long.

Le fichier joint comporte un tableau s’étendant de A1 à C17. La macro du bouton OK filtre les colonnes A et B selon certains critères de choix et inscrit en C18 :
Range("C65536").End(xlUp).Offset(1, 0).Select
ActiveCell.Value = Application.Subtotal(9, ActiveSheet.AutoFilter.Range.Columns(3))
la somme correspondant aux filtres.
La commande « Annuler » ou « Fermer » efface -entre autres- le contenu de C18
Range("C18").Select
Selection.ClearContents
pour pouvoir ré-inscrire en C18 le résultat d’un nouveau filtre.
Or, c’est là que le bât blesse : en effet, un autre filtre demandé après « remise à zéro » (« Annuler ») fonctionne bien dans son calcul (le résultat est inscrit en C18) mais la ligne 18 est masquée. Seules apparaissent les lignes à partir de la ligne 19.

Cette anomalie disparaît si entre deux calculs de filtres on supprime les cellules A18 :C18 ou la ligne 18 entière (et non pas le contenu). Une telle action est facile à transcrire en vba. Je ne l’ai pas -encore- fait car j’aime comprendre les choses.

En fait, Excel agit, après suppression du contenu de A18 :C18 comme si ces cellules « contenaient » encore une valeur et les masque en cas de nouveau filtre.

Cette anomalie est-elle explicable par les plus calés d’entre vous ?

Merci d’avance pour votre attention.
 

Pièces jointes

  • Filtre2colonnes.zip
    23 KB · Affichages: 54
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Filtre sous vba. Les mystères d'Excel.

Bonsoir 13GIBE59

J'ai toujours un doute avant de répondre à un message où je lis:
13GIBE59 à dit:
Cette anomalie est-elle explicable par les plus calés d’entre vous ?
... ça donne l'impression que je me considère comme "un de ceux-là" ce qui est fort loin d'être le cas !
Bref, deux choses: la première est que je ne suis pas certain de rencontrer le même problème sous Xl 2000. La seconde est que j'aurais tendance à "décoller" le sous-total de la liste de données avec, par exemple:
Code:
Range("C65536").End(xlUp).Offset(4, 1).Select

Mais, bon ... ce que j'en dis ...

Modeste
 

13GIBE59

XLDnaute Accro
Re : Filtre sous vba. Les mystères d'Excel.

Bonsoir Modeste.

Je te remercie de ta réponse. Bien sûr je peux "placer" ma réponse sous-total ailleurs dans la feuille, d'ailleurs je l'ai intégrée dans le userform.

Mais j'aurais aimé comprendre le pourquoi du comment de cette fichue anomalie !

Qui saura ?
 

13GIBE59

XLDnaute Accro
Re : Filtre sous vba. Les mystères d'Excel.

Snif...

Personne ne s'intéresse à mon problème. Je me doutais que mon message était un peu long... Mais difficile de faire autrement.

Tant pis. J'ai la solution, mais pas l'explication du comportement dExcel.
 

Discussions similaires

Réponses
12
Affichages
412
Réponses
69
Affichages
4 K
Réponses
12
Affichages
577
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…