Avant-dernière - Antepenultième (voire plus) cellule non vide

ILoveZadig

XLDnaute Occasionnel
Bonjour à tous,

J'ai un problème sur lequel je suis depuis pas mal de temps, mais qui peut être résolu asez facilement par des connaisseurs comme vous ;-)

En fait, je vous joins un fichier pour que ce soit clair. Ce que je voudrais, c'est une formule qui vienne récupérer le contenu (qui est lui même le résultat d'une formule) d'une cellule. Problème : cette cellule n'est ni la dernière non vide, ni la première. J'ai trouvé beaucoup de sujets à propos de la dernière ou première cellule non vide, mais pas avant dernière (voire plus).

Merci beaucoup par avance à ceux qui se pencheront sur ce problème, et qui j'en suis sûr, les résoudrons.

NB : je précise que cette formule a un intérêtdans le sens où j'exploite un fichier mis à jour quotidiennement, avec un décalage de 15 colonnes par jour. Aller recherche la Xème dernière cellule vide permettrait de ne pas tenir compte de ce décalage de colonne.
 

Pièces jointes

  • Non vide.xls
    14.5 KB · Affichages: 72
  • Non vide.xls
    14.5 KB · Affichages: 74
  • Non vide.xls
    14.5 KB · Affichages: 75

2passage

XLDnaute Impliqué
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour,

Je crains de ne pas comprendre ce que tu souhaites, malgré le fichier. Ok, tu nous dis ce que tu ne veux pas, mais tu ne nous précises pas ce que tu souhaites. Quelle est la règle pour choisir la cellule à "ramener" ?

A plus
 

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour 2passage,

Pour être plus clair : sur le fichier, j'ai mis par exemple Contenu de C1. Cette cellule, sur le fichier, est la 9ème cellule non vide à partir de la droite (9ème ou 5ème si on ne prendre pas en compte les cellules vides)

Par contre, la cellule C3 est la 9ème ou 6ème non vide en partant de la droite, le cas échéant.

J'avais une formule de ce type :
=SOMME(INDEX(1:1;0;NBVAL(1:1)-5))

Mais elle ne fonctionne pas vraiment à tous les coups..
 

Tibo

XLDnaute Barbatruc
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour Zadig, 2passage,

Pas sûr d'avoir bien compris.

Pour avoir la première valeur de la colonne C, puis la deuxième, une formule matricielle :

Code:
=INDEX($C$1:$C$25;PETITE.VALEUR(SI($C$1:$C$25<>"";($C$1:$C$25<>"")*
LIGNE($C$1:$C$25));[COLOR=red][B]1[/B][/COLOR]))

Formule matricielle à valider par CTRL + MAJ + ENTREE

pour la 2ème valeur, remplacer le 1 par 2

Pour avoir la dernière valeur, puis l'avant-dernière, même formule en remplçant PETITE.VALEUR par GRANDE.VALEUR

Je te laisse tester

Si pas ça, reviens avec plus de précisions.

@+
 
G

Guest

Guest
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour le fil,

voici une formule matricielle à valider par CTRL+MAJ+ENTRER :

Code:
=SI($C$1:$C$20<>"";INDIRECT("C"&PETITE.VALEUR(SI($C$1:$C$20<>"";LIGNE($C$1:$C$20);"");[COLOR=red][B]1[/B][/COLOR]));"")


Où le 1 rouge est le numéro d'ordre désiré 1ère non vide ou 2 ème non vide etc..

Si tu veux partir de la dernière valeur pour remonter change Petite.Valeur par Grande.Valeur.

Voir fichier joint

A+ à tous

[Edit] Hello Tibo:):)
 
Dernière modification par un modérateur:

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour Tibo, et merci de te pencher sur ce problème.

Je crois comprendre que la logique de ta formule réside dans un choix par colonne. Ce qu'il me faudrait serait je pense par ligne.

Mon fichier implique un copié-collé de 15 colonnes chaque jour, à la suite (Lundi de A à O, Mardi de P à AD, etc.). Je voudrais sur une autre feuille un tableau (mon fichier joint ci-dessus) reprenant les valeurs du dernier jour copié (Lundi, reprendre de A à O, Mardi, de P à AD...)

En fait, j'ai une formule, qui ne fonctionne que pour le premier jour :
=(INDEX(1:1;0;NBVAL(1:1)-2))

Dans la ligne 1, avec NBVAL, je compte le nombre de cellules non vide (5) auquel je soustraie 2. 5-2 = 3 = colonne C.

J'arrive donc à avoir C3 de cette manière. MAIS, dans mon fichier mis à jour quotidiennement, c'est un ensemble de 15 colonnes qui sont copiées et collées, cet ensemble ayant à chaque fois le même nombre de cellules vides.

Dans mon fichier, si je copie et colle ces colonnes à la suite, dans la ligne 1, je n'aurais plus 5 cellules non vides, mais 10. De même, j'aurais 12 cellules vides, et non 6.

De ce fait, si je veux, avec le décalage de cellules, NBVAL(1:1)-2 ne donnera plus 3 mais 8. Or, si je voulais conserver un décalage de 15 colonnes, il faudrait que j'aie, au lieu de la colonne C, la colonne R. Ici, avec la formule, j'aurai la colonne H (8 en valeur).

Je comprends que mon problème est difficile à cerner. Je peux joindre à nouveau un fichier si cela peut permettre d'être plus clair.
 

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Bonjour Tibo, et merci de te pencher sur ce problème.

Je crois comprendre que la logique de ta formule réside dans un choix par colonne. Ce qu'il me faudrait serait je pense par ligne.

Mon fichier implique un copié-collé de 15 colonnes chaque jour, à la suite (Lundi de A à O, Mardi de P à AD, etc.). Je voudrais sur une autre feuille un tableau (mon fichier joint ci-dessus) reprenant les valeurs du dernier jour copié (Lundi, reprendre de A à O, Mardi, de P à AD...)

En fait, j'ai une formule, qui ne fonctionne que pour le premier jour :
=(INDEX(1:1;0;NBVAL(1:1)-2))

Dans la ligne 1, avec NBVAL, je compte le nombre de cellules non vide (5) auquel je soustraie 2. 5-2 = 3 = colonne C.

J'arrive donc à avoir C3 de cette manière. MAIS, dans mon fichier mis à jour quotidiennement, c'est un ensemble de 15 colonnes qui sont copiées et collées, cet ensemble ayant à chaque fois le même nombre de cellules vides.

Dans mon fichier, si je copie et colle ces colonnes à la suite, dans la ligne 1, je n'aurais plus 5 cellules non vides, mais 10. De même, j'aurais 12 cellules vides, et non 6.

De ce fait, si je veux, avec le décalage de cellules, NBVAL(1:1)-2 ne donnera plus 3 mais 8. Or, si je voulais conserver un décalage de 15 colonnes, il faudrait que j'aie, au lieu de la colonne C, la colonne R. Ici, avec la formule, j'aurai la colonne H (8 en valeur).

Je comprends que mon problème est difficile à cerner. Je peux joindre à nouveau un fichier si cela peut permettre d'être plus clair.


Edit : Bonjour Hasco, même problème je pense ;)
 

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Pour faire plus simple, la formule que j'ai :
=(INDEX(1:1;0;NBVAL(1:1)-2))

Compte les X premières cellules pleines. Je souhaiterais savoir s'il est possible d'avoir une formule qui compte les X deernières cellules vides.

Suis-je plus clair? ;-)
 

Tibo

XLDnaute Barbatruc
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

re,

Ton fichier faisait référence à C1 et C3 et j'en avais conclu que tu faisais une recherche par colonne.

Peux-tu nous donner 2 ou 3 exemples de ce que tu recherches avec la réponse attendue.

A te (re)lire

@+
 

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

J'ai refait un fichier plus clair, qui vous permettra sûrement de mieux comprendre.

Sur la feuille Mardi, 15 colonnes de données sont ajoutées quotidiennement. Il faut donc que la formule aille, chaque fois que l'on ajoute des données, chercher les données 15 colonnes plus loin.

Voir fichier pour plus de clarté ;)

Merci beaucoup pour votre aide !
 

Pièces jointes

  • Non vide.xls
    21.5 KB · Affichages: 73
  • Non vide.xls
    21.5 KB · Affichages: 72
  • Non vide.xls
    21.5 KB · Affichages: 71

Tibo

XLDnaute Barbatruc
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

re,

Formule matricielle très similaire à celle que je t'avais proposé initialement :

en E16 :

Code:
=INDEX(Mardi!$R$1:$R$25;PETITE.VALEUR(SI(Mardi!$R$1:$R$25<>"";(Mardi!$R$1:$R$25<>
"")*LIGNE(Mardi!$R$1:$R$25));[B][COLOR=red]1[/COLOR][/B]))

Même formule en E17 en remplaçant le 1 par 2

Formule matricielle à valider par CTRL + MAJ + ENTREE

@+
 

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

Merci beaucoup pour ton aide Tibo ;)

Il y a cependant un problème par rapport à cette formule : J'ai joint le fichier en y ajoutant Mercredi (dans la feuille Mardi). Les données de Mercredi viennent donc se coller sur les 15 colonnes suivantes. Et la formule ne vient pas chercher le chiffre propre à Mercredi (qui dans le fichier, est sur AG2, soit R+15), mais reste sur Mardi.
 

Pièces jointes

  • Non vide.xls
    23.5 KB · Affichages: 71
  • Non vide.xls
    23.5 KB · Affichages: 76
  • Non vide.xls
    23.5 KB · Affichages: 71

Tibo

XLDnaute Barbatruc
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

re,

Pas trop compris si tu créais un nouvel onglet ou si tout se passe sur l'onglet Mardi.

Si tout se passe sur l'onglet Mardi, en E16 :

Code:
=INDEX(DECALER(Mardi!$A$1;0;(NBVAL(Mardi!$1:$1)-1)*15+2;25);PETITE.VALEUR(SI(
DECALER(Mardi!$A$1;0;(NBVAL(Mardi!$1:$1)-1)*15+2;25)<>"";(DECALER(Mardi!$A$1;0;(
NBVAL(Mardi!$1:$1)-1)*15+2;25)<>"")*LIGNE(DECALER(Mardi!$A$1;0;(NBVAL(Mardi!$1:$1)
-1)*15+2;25)));[B][COLOR=red]1[/COLOR][/B]))

Toujours matricielle, donc validation par CTRL + MAJ + ENTREE

Remplacer le 1 par 2 pour la 2ème valeur

@+
 
Dernière édition:

ILoveZadig

XLDnaute Occasionnel
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

J'avais créé un onglet Lundi et Mardi pour faciliter, mais en fait, j'ai compliqué les choses.

Tout se passe bien sur un seul et même onglet. Ta formule (que je ne comprends pas du tout!) fonctionne. J'ai ajouté 15 colonnes (pour créer un Jeudi) et il est allé chercher les données pour le Jeudi.

J'avais joint ici une partie très simplifiée du fichier réel. Je vais donc essayer de l'appliquer à mon fichier. Je pense tout de même que je reviendrais pour un peu d'aide ;)

En effet, le fichier que j'ai joint ici reprend un tableau. C'est ce tableau qui en fait doit être mis à jour quotidiennement. Cela fait donc de nombreuses cellules à compléter avec ta formule :eek:
 

pierrejean

XLDnaute Barbatruc
Re : Avant-dernière - Antepenultième (voire plus) cellule non vide

bonjour IloveZadig
Salut Tibo
Salut Hasco
Salut DePassage

En supposant avoir compris : une formule personnalisée
 

Pièces jointes

  • Non vide.zip
    15 KB · Affichages: 42
  • Non vide.zip
    15 KB · Affichages: 44
  • Non vide.zip
    15 KB · Affichages: 53

Discussions similaires

Réponses
3
Affichages
280

Statistiques des forums

Discussions
312 400
Messages
2 088 087
Membres
103 711
dernier inscrit
mindo