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

Problème dans une MFC

  • Initiateur de la discussion Initiateur de la discussion Quincy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Quincy

XLDnaute Occasionnel
Bonjour à tous

Dans un tableau contenant environ 2000 lignes et une vingtaine de colonnes de montants, je me sers d'une MFC pour mettre en rouge les lignes dont le montant de la colonne D ou le montant de la colonne E est à 0 pour à terme les supprimer.

Mon problème est le suivant : je souhaiterais garder les lignes qui correspondent au critère Année / Code (colonnes B et C). Dans mon fichier joint, un extrait de ma base, les lignes qui doivent rester blanches son repérées par une flêche (colonne F).

Existe t-il un moyen d'obtenir ce que je recherche, par MFC, formule ou macro ?

Bien cordialement.

Quincy
 

Pièces jointes

Re : Problème dans une MFC

Re,

Bon, la MFC me convient très bien. Cependant il me semble qu'il y a un petit problème : dans la formule de la colonne J le nombre de lignes (118) est "en dur" et il est amené à changer régulièrement. J'ai essayé de remplacer par 65000 mais les formules ne marchent plus, ce qui je pense est normal.
Que peut-on faire ?

Quincy
 
Re : Problème dans une MFC

Bonjour

Chez moi, ça fonctionne si je tappe 2000 à la place de 118. Ne pas oublier qu'il s'agit d'une formule matricielle, qu'il faut donc la rentrer en faisant ctrl+maj+entrer.

Toutefois, ce n'est pas une bonne idée de remplacer 118 par un très grand nombre car cela va prendre beaucoup de temps de calcul, même pour une petit fichier. Avec 2000, cela doit bien prendre déja 2 ou 3 secondes !

Le mieux, c'est de déterminer le nombre de ligne du tableau, et de le rentrer automatiquement en colonne J. Chose faite dans le fichier ci-joint.

Cela ne résoud pas totalement le problème, car il faut bien rentrer dans la colonne I un très grand nombre de fois la formule (test/D et E) sans connaitre à l'avance le nombre de lignes réellement utiles.

@ plus
 

Pièces jointes

Re : Problème dans une MFC

re,

OK, merci beaucoup. Maintenant je crois que je vais y arriver.
Pour info que veut dire "zz" dans la formule de dernière ligne ?

A bientôt.
Bonne journée.

Quincy
 
Re : Problème dans une MFC

re,

Pour info que veut dire "zz" dans la formule de dernière ligne ?

Quincy

Rebonjour

La fonction EQUIV recherche dans la colonne I le mot zz. Comme elle ne le trouve pas, elle te donne (à cause du ;1 (qui peut d'ailleurs être omis)) la position de la dernière ligne occupée.

Dans le cas d'une colonne contenant des valeurs numériques, pour être sûr que la fonction ne trouve pas le nombre demandé, on lui aurait demandé de chercher un très gand nombre, ex 9^9, et excel donnerait la position de la dernière cellule contenant un nombre.

@ plus
 
Dernière édition:
Re : Problème dans une MFC

Bonjour le forum, Bonjour CISCO,

CISCO, c'est super ce que tu as fais là. Les cellules sont enfin identifiées comme je le souhaitais avec la colonne K.
Avec le dernier fichier et une formule supplémentaire pour les identifier par la couleur + ta formule matricielle sur 2 200 lignes je ne suis parvenu à rien car le PC ramais trop et ne m'a jamais donné de résultats. J'ai dû faire un Crtl-Alt-Supp.
Je ne pense pas utiliser les autres colonnes après la K car je ne saurai pas adapter ces formules dans mon fichier complet avec toutes ses colonnes.

Je vais essayer de bosser avec ces nouveaux éléments et te donnerai des nouvelles en debut de semaine si j'ai pu avancer.

Je te remercie beaucoup et te souhaite de passer un bon week-end.

Cordialement.
Quincy
 
Re : Problème dans une MFC

Bonsoir

Une version, équivalente de la version 8, donc ne permettant que la mise en évidence (lignes blanches + numéros de lignes blanches regroupés) des lignes à conserver, sans formule matricielle, donc tournant normalement plus rapidement.

Le calcul matriciel prend beaucoup de temps de calcul. Il était ici nécessaire pour éliminer les doublons. Dans cette nouvelle version, il y a donc des doublons, ce qui fait que, des fois, excel refait certains calculs pour rien. Cela ne semble pas changer les résultats.

Résultat :Gros gain de temps grace à la suppression du calcul matriciel et petite perte de temps à cause des doublons.

A toi de tester.

Si je peux, je ferais une autre version, équivalente à la version 10, regroupant les lignes intéressantes, mais pour le moment, je n'y arrive pas sans calcul matriciel.

Si ton objectif, c'est de faire la somme par code+année, cela vaudrait peut être le coup d'afficher uniquement cela, et pas le tableau des lignes intéressantes, déja en blanc dans le tableau initial.

@ plus
 

Pièces jointes

Dernière édition:
Re : Problème dans une MFC

Bonjour

Idem
+ le tableau récapitulatif ne contenant que les lignes blanches utiles (je n'ai pas réussi à me passer d'un calcul matriciel, mais celui-ci ne se fait plus par rapport à toute la hauteur du tableau (une centaine de lignes dans l'exemple), mais uniquement par rapport aux lignes utiles de la colonne K (une dizaine de lignes dans l'exemple)
+ généralisation : utilisation du numéro de la dernière ligne du tableau dans les formules (par ex B$119 est remplacé par INDIRECT("B$"&H$1)),
+ gain de temps de calcul : utilisation du nombre de lignes utiles de la colonne K dans la colonne L (et non plus 119 dans tous les cas) et dans la mise en forme conditionnelle (et non plus 20 par défaut. Autrement dit, si il y avait moins de ligne, excel faisait des vérifications pour rien, si il y en avait plus, certaines lignes n'étaient pas mises en blanc...). Si tu décides d'utiliser les anciens fichiers, il faut vérifier cette MFC/blanc. Le test ne doit pas s'arrêter à la ligne 20.

Attention : Comme la fonction INDIRECT utilise la référence de la cellule sous forme de texte (ex : INDIRECT("H$"&...) et non INDIRECT(H$&...)) si tu supprimes des colonnes sur la gauche, il faudra aller dans toutes ces formules contenant cette fonction INDIRECT et changer la lettre (H dans l'exemple ci-dessus). Souvent, il suffit de le faire sur la première ligne du tableau, puis d'étendre vers le bas les formules obtenues.
Idem dans la MFC pour la lettre K dans INDIRECT("$K"&...) dans le test pour mettre en blanc.

@ plus.

P.S : Ce n'est pas facile d'être précis et concis à la fois. Si tu as besoin d'info, ne te gênes pas pour poser des questions.
 

Pièces jointes

Dernière édition:
Re : Problème dans une MFC

Bonjour

Ci-dessous, un fichier testé avec un peu plus de 2500 lignes.

Bien sûr, pour le faire passer sur le forum, il a fallu que je supprime certaines lignes. Il faut donc maintenant recopier vers le bas certaines lignes contenant les formules sur la droite.

@ plus
 

Pièces jointes

Dernière édition:
Re : Problème dans une MFC

Bonsoir le forum, bonsoir Monique, bonsoir CISCO.

CISCO, j'ai pu voir que tu avais de nouveau beaucoup travailler, malheureusement je ne peux pas tester car mes fichiers dans leurs versions complètes sont au boulot et chez moi j'ai des problèmes de compatiblité. Merci à Monique pour sa contribution.
Dès demain je me remets dessus et vous tiens au courant.

Merci à vous deux.
Cordialement.
Quincy
 
Re : Problème dans une MFC

Bonjour le forum, Bonjour Monique, bonjour CISCO

CISCO, j'ai essayé d'exploiter les nouveaux fichiers que tu as mis sur ce post et après plusieures tentatives infructueuses dues au nombre trop élevé de lignes et de colonnes du fichier source, j'ai voulu essayer la méthode de Monique qui proposait de déclarer quelques champs en "Definir, Noms" et de saisir une formule nommée elle aussi, le résultat a été plutôt concluant.

Je ne voudrais surtout pas de vexer en te disant que je vais opter pour la méthode de Monique (que je remercie au passage), je sais que tu t'es beaucoup investi sur mon problème pendant plusieurs jours et je t'en suis infiniment reconnaissant.

Pour comprendre la complexité de mon problème, je te propose de te joindre par MP un zip du fichier source et du fichier abouti (je pense) (992 Ko zippé, 11 Mo dézippé), tu te rendras compte de toutes les difficultés que je pouvais rencontrer.

Encore merci,
Bien cordialement,
Quincy
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

C
  • Question Question
Réponses
8
Affichages
1 K
clarouche33
C
A
Réponses
6
Affichages
2 K
AlexMancho
A
C
Réponses
8
Affichages
2 K
coloc52
C
R
  • Résolu(e)
Réponses
4
Affichages
1 K
Roxoneil
R
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…