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. :mad:
Je vais essayer d’être concis, et je m’excuse par avance si mon message paraît un peu long. :eek:

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. :cool:

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 ? :confused:

Merci d’avance pour votre attention. :p
 

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 ! :mad:

Qui saura ? :confused:
 

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...:eek: Mais difficile de faire autrement.:mad:

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

Discussions similaires

Réponses
12
Affichages
330
Réponses
69
Affichages
4 K
Réponses
12
Affichages
545

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 501
dernier inscrit
talebafia