Hauteur de ligne modifiée après un filtre sur xlsm

Salut à tous,

Je précise tout d'abord que je suis débutant.

J'ai un bug sur une feuille avec macro. Tout fonctionne parfaitement : j'ai créé un bouton qui inséré une ligne en "3" après la "2" de façon à englober automatiquement mes sommes et formules sur un autre onglet.

Cette ligne en "2" que j'appelle ligne fantôme, je l'ai mise à une hauteur 0 et figer en haut de tableau de façon à ce qu'elle soit invisible pour les utilisateurs (surtout après avoir protéger la feuille).

Donc tout se passe bien, sauf quand je filtre une colonne : le filtre fonctionne nickel mais quand je recoche l'ensemble des choix de cellules "(Sélectionner tout)" du filtre , le tableau récupère toutes ces lignes, MAIS la hauteur ma ligne "fantôme" "2" passe de 0 à 12.75 (même pas 15 comme les autres lignes....).

Ça me rend dinguo...

J'ai mis le fichier en pj. Si quelqu'un pouvait m'aider sivouplééééé

Basile

Bonjour Basile et

j'ai créé un bouton qui inséré une ligne en "3" après la "2" de façon à englober automatiquement mes sommes et formules sur un autre onglet.

le tableau récupère toutes ces lignes, MAIS la hauteur ma ligne "fantôme" "2" passe de 0 à 12.75 (même pas 15 comme les autres lignes....).

La solution est très simple ... tu n'as pas à ajouter cette ligne 2 !

Il suffit que tu passes tes données en tableau

capture d ecran 588

avec ensuite une formulation plus structurée des calculs

=SOMME.SI(Tableau1[STATUT];"Offre envoyée";Tableau1[MONTANT ESTIMÉ])

excel mettra automatiquement cette formulation quand tu sélectionneras toute la colonne.

Bonsoir Steelson ,

Un grand merci pour ton aide. J'ai fini par tout comprendre, ce qui n'était à priori pas gagné...

Toutefois, car forcement il y a un hic.... Mon ancien système me permettait de sélectionner une plage pour mes calcul, en l’occurrence, par exemple les 2 derniers mois, la dernière année. Là ce que tu me proposes prends tout le tableau dans sa globalité. Est-ce qu'il est possible de tenir compte de valeurs dates mini et maxi saisies dans des cellules et que mes calculs en tiennent compte (calcul suivant filtre période de dates)?

Basile

Bonjour,

la meilleure façon de faire est de réaliser un TCD.

sinon on peut aussi le faire avec SOMMEPROD.

exemple TCD

Salut à tous, salut Steelson,

Ok. J'avance, j'avance . Sur ma première feuille j'ai réussi à faire mes totaux en fonction de dates que je choisis. Ces totaux sont spécialement utiles après l’exécution de filtres (par catégorie industrie par exemple), donc de ce côté là c'est nickel.

Le problème maintenant, c'est que je voudrai pouvoir faire la même chose sur le 2éme onglet, le récapitulatif. Le truc c'est je n'arrive pas à imbriquer une formule dans une autre formule... En l’occurrence, mes formules =SOMME.SI(Tableau2[STATUT];"Offre envoyée";Tableau2[MONTANT ESTIMÉ]) ou =SOMME.SI.ENS('SUIVI DES AFFAIRES'!C2:C156; 'SUIVI DES AFFAIRES'!I2:I156; "AUTO"; 'SUIVI DES AFFAIRES'!A2:A156; "Offre envoyée") dans une formule qui tient compte du tri dates (> à la date fin et < à la date départ comme j'ai pu faire dans l'onglet 1 "suivi des affaires". Là ça devient chaud, chaud, chaud.... Une idée?

En pj mon tableau

En l’occurrence, mes formules =SOMME.SI(Tableau2[STATUT];"Offre envoyée";Tableau2[MONTANT ESTIMÉ]) ou =SOMME.SI.ENS('SUIVI DES AFFAIRES'!C2:C156; 'SUIVI DES AFFAIRES'!I2:I156; "AUTO"; 'SUIVI DES AFFAIRES'!A2:A156; "Offre envoyée") dans une formule qui tient compte du tri dates (> à la date fin et < à la date départ comme j'ai pu faire dans l'onglet 1 "suivi des affaires".

Bonjour,

Quelques remarques :

  • n'hésite pas ouvrir un post, tu capteras de nouveaux contributeurs; en l'occurrence ce problème n'a plus rien à voir avec le titre (ce sujet a été résolu en passant en tableau excel)
  • pourquoi ne pas continuer avec des formules structurées ... je fais référence à =SOMME.SI.ENS('SUIVI DES AFFAIRES'!C2:C156; 'SUIVI DES AFFAIRES'!I2:I156; "AUTO"; 'SUIVI DES AFFAIRES'!A2:A156; "Offre envoyée")
  • je ne vois pas das l'onglet 1 une formule qui tint compte de dates !

En alignant les libellés de la colonne A avec ton tableau de suivi, il n'y a que quelques formules très répétitives. Désolé pour les "s" !

Exemple :

=SOMME.SI.ENS(Tableau2[MONTANT ESTIMÉ];Tableau2[CATEGORIE INDUSTRIE];D$1;Tableau2[STATUT];$A6;Tableau2[DATE OFFRE];">="&$B$15;Tableau2[DATE OFFRE];"<="&$B$16)

Si tes dates recouvrent des mois entiers, on aurait pu poursuivre dans la voie plus simple des TCD.

Je t'ai ajouté une version avec TCD (et sans calcul !)

Bonjour,

des remarques sur cette proposition ?

Bonsoir Steelson,

Désolé pour ce délai de réponse... Les temps sont compliqués... Tes propositions sont super, je préfère rester sur ma version avec calcul, car je maîtrise mieux que la version TCD. Mon niveau est tellement faible.... Toutefois, il faut que je digère ce que tu m'as envoyé, que je contrôle s'il n'y a pas de bug. Un grand merci pour ton aide en tout cas.

Bonsoir,

Après test, je me rends compte que ça bug sur la feuille SUIVI DES AFFAIRES quand on fait un filtre. Ci-dessous une capture d'écran avec une simulation avec filtre SOCIETE = TEST, mes totaux devraient être à 2000 et 2000€.

pb filtre

Je voudrais que les formules ne s'appliquent qu'aux éléments apparents, les éléments filtrés. Est-il possible d'imbriquer SOMME.SI.ENS dans SOUS-TOTAL? J'ai vu qu'il était possible de peut-être pouvoir résoudre ce problème avec SOMMEPROD.... Je suis perdu. Trop puissant pour moi..... HELP

Ajoute une ligne de totaux dans ton tableau et tu pourras choisir un SOUS-TOTAL qui correspondra à ton filtre.

capture d ecran 624 capture d ecran 625

Travailler avec des tableaux n'est pas une contrainte (idem pour les TCD), c'est un réel atout en acceptant cette logique de présentation et de calcul. Et cela évite toute formule un peu complexe !

Je connais le principe de la fonction SOUS.TOTAL. Le challenge s'est de d'obtenir des totaux MONTANT ESTIMÉ et MONTANT COMMANDE CLIENT qui seraient fonction de de Période de référence et des filtres que l'on souhaite appliquermanuellement (SOCIETE ou CATEGORIE INDUSTRIE par exemple).

Pour exemple, ci-joint le tableau en situation de filtre sur SOCIETE portant le nom "test" sur une période 01/03/2020 à 31/05/2020.

La ligne que tu as créée indique le total des colonnes apparentes après filtre. Ce que je voudrais, c'est le, les totaux de ces lignes mais uniquement sur la période demandée.

Les TOTAUX pour la SOCIETE "test" sur la période 01/03/2020 à 31/05/2020 devrait être :

MONTANT ESTIMÉ = 12570€

MONTANT COMMANDE CLIENT = 12000,00€

Penses-tu que ce soit possible?

Penses-tu que ce soit possible?

oui, et comme j'aime bien les choses "carrées" je propose un filtre avancé y compris sur les dates

il suffit de lancer la macro filtrer dans le module 8 aujourd'hui

Sub filtrer()
    Range("Tableau2[#All]").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A1:C2"), Unique:=False
End Sub

tu organises les données comme tu veux ... dans les critères en A2 et B2 il y a le report des dates (en standard) avec des inégalités.

Rechercher des sujets similaires à "hauteur ligne modifiee filtre xlsm"