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

Microsoft 365 Recopie avant dernière cellule d'une ligne avec cellules vides

vincent32

XLDnaute Nouveau
bonjour à tous;
Je reviens vers vous non pas pour VBA mais pour une formule excel
Je cherche a faire une recopie sur une autre feuille de l'avant dernière cellule remplie par du texte .
Je vous met une screen de mon tableau



Merci d'avance
 
Solution
Bonjour à tous,

Pourquoi as-tu des formules et des listes déroulantes, tu ne peux pas avoir la même chose sur toutes les colonnes?

Après nettoyage
VB:
=SIERREUR(INDEX($C8:$I8;GRANDE.VALEUR(SI(ESTTEXTE($C8:$I8)*($C8:$I8<>"bon")*($C8:$I8<>"");COLONNE($C8:$I8)-2);2));"")

JHA

JHA

XLDnaute Barbatruc
Bonjour à tous,

De quelle colonne?
Si colonne "C" tu peux essayer un truc du genre "=equiv(9^9;C:C)-1"
Il faut l'associer à la fonction décaler()
Peux-tu joindre le fichier exemple sur une image, on ne peut rien pour toi.

JHA
 

vincent32

XLDnaute Nouveau
Je te met une copie de la feuille en question.
Je cherche à extraire dans la colonne M l'état de l'avant dernière mesure
En colonne N j'ai reussi a trouver la formule pour extraire l'état de la derniere mesure
Et ca pour chaque lignes
 

Pièces jointes

  • Classeur test.xlsx
    23.3 KB · Affichages: 2

JHA

XLDnaute Barbatruc
Bonjour à tous,

Avec le fichier c'est mieux car j'étais parti sur une autre piste.
A essayer
VB:
=INDEX($C8:$I8;EQUIV("zzz";C8:I8)-1)

JHA
 

Pièces jointes

  • Classeur test.xlsx
    24 KB · Affichages: 1

vincent32

XLDnaute Nouveau
Bonjour à tous,

Avec le fichier c'est mieux car j'étais parti sur une autre piste.
A essayer
VB:
=INDEX($C8:$I8;EQUIV("zzz";C8:I8)-1)

JHA
On y est presque mai c'est pas tout a fait ca car par exemple pour la ligne 10 je voudrai récupérer l'avant dernière cad en colonne D ...
Je souhaite ne pas prendre en compte les cellule vide ....

Vois tu ce que je veux dire ?
 

JHA

XLDnaute Barbatruc
Bonjour à tous,

Pourquoi as-tu des formules et des listes déroulantes, tu ne peux pas avoir la même chose sur toutes les colonnes?

Après nettoyage
VB:
=SIERREUR(INDEX($C8:$I8;GRANDE.VALEUR(SI(ESTTEXTE($C8:$I8)*($C8:$I8<>"bon")*($C8:$I8<>"");COLONNE($C8:$I8)-2);2));"")

JHA
 

Pièces jointes

  • Classeur test.xlsx
    26.7 KB · Affichages: 3
Dernière édition:

JHA

XLDnaute Barbatruc
Bonjour à tous,

la fonction grande.valeur(plage;2) te retourne une position si les données sont en texte, si il n'y a pas de vide et de "bon".
la fonction index(plage;position) te retourne la donnée
C'est une fonction matricielle à valider par Ctrl+Maj+Entrée, après validation, des accolades se positionnent de chaque côté de la formule.

Pour voir comment fonctionne la formule dans le ruban tu choisis Formules/evaluer la formule/evaluer

JHA
 

vincent32

XLDnaute Nouveau
Super merci bcp je vais essayer de la mettre en application
Bonne continuation
 

Discussions similaires

Réponses
10
Affichages
463
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…