Recherche V Nb.vide

Fermé
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020 - 19 mars 2015 à 11:08
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 21 mars 2015 à 11:36
Bonjour,
Je cherche une formule de calcul qui permet de détecter le nombre de vide entre une cellule d'Excel remplie et la dernière qui la précède.
Autrement dit, si j'ai un chiffre sur la ligne A15 et le dernier qui le précède se trouve dans la ligne A8, la formule doit me donner 6 cases vides qui sépare les 2 cases et ainsi de suite.
Merci infiniment.
A voir également:

6 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
19 mars 2015 à 18:50
Bonjour à tous
La formule de michel_m fonctionne à condition que la première cellule de la plage saisie soit la première cellule pleine, mais ce que veut nonossov, c'est à partir de la première cellule en partant du haut de la feuille.

Sauf erreur de ma part, ceci devrait répondre au problème posé, avec les valeurs en colonne F, et à valider par CTRL+ shift + Entrée
=EQUIV(VRAI;INDIRECT("F"&EQUIV(VRAI;$F$1:$F$100<>"";0)+1&":F100")<>"";0)-1
à tester
cdlt
1
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020
20 mars 2015 à 11:51
Pourquoi il ne marche pas veuillez m'aider pas un fichier excel svp
0
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 423
19 mars 2015 à 11:32
Bonjour

Un exemple via une macro
https://www.cjoint.com/?3CtlRXSOkm3

Cdlmnt
0
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020
19 mars 2015 à 12:04
Il ne marche pas, svp s'il est possible juste des formule excel
merci bc
0
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 423
19 mars 2015 à 13:50
Comment ça, il ne marche pas ?
Est ce qu'avec mon fichier ça fonctionne ?

Sans macro, je ne vois pas, ce qui ne veut pas dire qu'il n'y a pas de solution

cdlmnt.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
19 mars 2015 à 14:07
Salut CCM
je lui en donné une, là aussi ca ne marche pas !...
https://forums.commentcamarche.net/forum/affich-31717455-formule-calcule-nombre-de-vide-avec-condition#p31718261
j'avais signalé le doublon mais....
0
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 423 > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
19 mars 2015 à 16:36
Pas grave, il fait beau .....
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
20 mars 2015 à 12:50
Bonjour
https://www.cjoint.com/c/ECunaHUXySY
la colonne testée est la colonne F, changez la lettre F dans la formule si vous changez de colonne, mais il faut impérativement valider par la combinaisons des 3 touches CTRL + SHIFT + ENTREE
cdlt
0
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020
20 mars 2015 à 13:33
Voici ce que je reçois comme résultat!!
https://www.cjoint.com/c/ECunS43laVu
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
20 mars 2015 à 16:57
Le problème est que vous avez mal formulé votre demande, La formule donne un résultat qui correspond exactement à ce que vous avez demandé (relisez votre demande: détecter le nombre de vide entre une cellule d'Excel remplie et la dernière qui la précède (je suppose "suit" à la place de "précède"). ), en effet la première cellule pleine est en F1 et la suivante est en F2 donc pas de cellule vide entre les deux, donc résultat =0.
Au vu de ce que vous renvoyez, Je comprends ce que vous voulez, mais, on loin de la demande initiale. En fait, c'est un problème un peu différent, si je reprends votre demande initiale, on doit ignorer les cellules vides avant la première cellule pleine et ne compter que les suivantes après la première cellule pleine jusqu'à la prochaine cellule pleine.c'est ce que j'ai fait. mais maintenant, on doit aussi ignorer toutes les cellules pleines qui se trouvent avant la première cellule vide et ne commencer qu' à comptabiliser qu'à partir de cette dernière jusqu' à la prochaine cellule pleine.
Bon le problème étant différent, je ne pense pas qu'une simple formule comme vous le demandez puisse faire tout ça, il faut passer par le VBA,
CCM81 vous à proposé un macro VBA, vous dites qu'elle ne marche pas, mais il la faite en fonction de votre demande, et évidemment, si vous changez les règles en cours de route, c'est normal que ça ne colle pas.
Pour le moment, je dois m'absenter, j'y reviendrai plus tard.
cdlt
0
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020 > Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023
20 mars 2015 à 18:13
Mr Mr Frenchie83 vous avez vraiment expliquer ma demande d'une manière détallé
je vais vous attendre merci,
...
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
21 mars 2015 à 05:54
Bonjour à tous
Devant votre rejet du VBA, je pense qu'il est nécessaire de faire un point sur le fonctionnement d'excel.
Les termes "SOMME, INDEX, RECHERHEV etc.." sont des FONCTIONS EXCEL.
Une FORMULE Excel s'écrit "=FONCTION(paramètres)"
Lorsque vous saisissez la formule suivante ex: "=SOMME(A1:A10)" .en arrière plan, Excel lance un programme qui va sommer les cellules de A1 à A10 et afficher le résultat .
Pour votre problème, vous voulez utiliser une FORMULE EXCEL, je pense que vous voulez dire "qui utilise les FONCTIONS EXCEL".
Excel possède des ressources énormes avec la mise à disposition pour l'utilisateur d'une grande quantité de FONCTIONS très élaborées. Cependant même, en les combinant entre elles, il ne peut pas répondre tous les cas particuliers qui peuvent se présenter.
Ce que vous auriez voulu, c'est une formule du genre:
"=NbCellulesVides(colonne F)" ,
Hélas, "NbCellulesVides" est une FONCTION qui n'existe pas, qu'à cela ne tienne, Excel permet de la créer soi -même. Donc comme le fait excel avec les FONCTIONS existantes, il faut construire un programme avec le langage mis à la disposition de l'utilisateur et qui va effectuer les calculs demandés, ce programme c'est le VBA. il s'écrit dans un module.
Il ne reste plus qu'à l'utilisateur d'écrire la formule désirée dans la cellule de son choix, comme un FONCTION Excel existante, le reste est transparent pour lui.
CCM81 (que je salue), vous à écrit le programme qui génère la FORMULE EXCEL, et qui fait ce que vous demandez, la formule est dans les cellules de la colonne B.
Il vous à expliquer comment recopier le programme dans le module. Si cela ne correspond pas tout à fait à ce que vous attendez, il se propose (si il est toujours d'accord) de le modifier à votre convenance. Que dire de mieux, c'est du sur mesure.
Je pense que de votre côté, vous devez faire ce petit effort d'adaptation sinon vous risquez de rester longtemps avec votre problème irrésolu.
Je vous souhaite une bonne journée
cdlt
0
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020
21 mars 2015 à 11:05
Frenchie83 Merci Mr, Pour votre explication, je suis convaincu par votre idée d'obligation de passer par vba,
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10900 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 2 novembre 2024 2 423
20 mars 2015 à 18:21
Bon,

Je vois que Frenchie83 (salut à toi) est aussi d'avis de passer par une macro, je te re-propose mon exemple avec quelques explications
https://www.cjoint.com/?3CusFl9SfnW
Si ça ne correspond pas à ce que tu veux, renvoies mon fichier avec les résultats attendus

Cdlmnt
0
nonossov Messages postés 610 Date d'inscription lundi 29 décembre 2014 Statut Membre Dernière intervention 17 janvier 2020
20 mars 2015 à 18:55
Merci infiniment Mr CCM81 pour votre effort mais je préfere une formule excel
merci encore une fois
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
Modifié par eriiic le 21/03/2015 à 12:07
Bonjour à tous,

Peut-être ?
Taille derniers vides de la colonne :
=EQUIV(1E+300;$F:$F;1)-EQUIV(1E+300;DECALER($F$1;;;EQUIV(1E+300;$F:$F;1)-1);1)-1

taille vides au-dessus de la ligne, mettre sur la ligne :
=LIGNE()-EQUIV(1E+300;DECALER($F$1;;;LIGNE()-1;);1)-1

https://www.cjoint.com/c/ECvmteGP1dK

eric

En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
0