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

Microsoft 365 Si une cellule est vide faire ressortie la valeur d'une autre cellule

Diiiloe

XLDnaute Nouveau
Bonjour à tous,
Nouvellement membre, j'essaie de me former seule sur l'outil qu'est EXCEL !
Actuellement je cherche une formule qui appliquerait la règle : si ma cellule A1 est vide, alors afficher la valeur de la cellule B1, si B1 est vide, alors afficher la valeur de C1, si C1 est vide...... etc jusqu'à la colonne E
J'ai tenté un =SI(A1="";"";MAX(A1:E1)) , ca fonctionne mais ce n'est pas ce que je recherche étant donné qu'il s'agit d'un fichier de facturation, le MAX m'affiche la valeur la plus haute entre A et E, et ce n'est pas ce que je veux car la valeur de la colonne D peut être supérieure à celle de la colonne E par exemple...

Si qqun a une solution je suis preneuse et vous en remercie d'avance !
Bonne journée,
Elodie
 

Diiiloe

XLDnaute Nouveau
Merci pour l'aide !
la formule SI fonctionne bien, en revanche le DECALER ne fonctionne pas, en tout cas dans mon fichier...
 

Pièces jointes

  • Capture d’écran 2023-03-16 153008.png
    27.3 KB · Affichages: 23

xUpsilon

XLDnaute Accro
Re,

Une capture d'écran n'est pas très efficace comme base de travail, donc ça va être difficile d'aider (voir charte du forum, joindre un fichier anonymisé).
N'y aurait-il pas besoin d'adapter la formule avec Decaler ? A mon sens c'est la meilleure possibilité, plus compacte et plus flexible que d'imbriquer une nombre aberrant de SI.

Bonne journée,
 

Diiiloe

XLDnaute Nouveau
bonjour

un exemple en PJ avec fonction matricielle (valider la formule par Ctrl+Maj+Entrée)
Merci ! mais j'ai l'impression que la formule est à l'envers ; si je rajoute un nombre devant le 50 en colonne D, la formule prend le nombre que je viens d'ajouter.
C'est dans l'autre sens en fait.
je suis désolée, je débute et c'est vraiment pas facile pour moi surtout, sans formation
 

Diiiloe

XLDnaute Nouveau
Ci-joint
Merci merci
 

Pièces jointes

  • diiiloe_excel forum1.xlsx
    26.1 KB · Affichages: 6

vgendron

XLDnaute Barbatruc
Effectivement.. si tu mets quelque chose AVANT, c'est bien cette nouvelle valeur qui est retournée==> Ca répond à la demande initiale
si A1 vide, alors B1
si B1 vide alors C1
si C1 vide alors D1...
==> en partant de la gauche (de A vers E) c'est la PREMIERE valeur non vide qui est renvoyée

un fichier exemple serait utile
 

Diiiloe

XLDnaute Nouveau
Ci-joint
 

Pièces jointes

  • diiiloe_excel forum1.xlsx
    26.1 KB · Affichages: 4

vgendron

XLDnaute Barbatruc
Vu ton MP, ton besoin est exactement le contraire de ce que tu decris dans le premier post
tu as besoin de la DERNIERE valeur de la ligne et pas la première
 

Pièces jointes

  • diiiloe_excel forum1.xlsx
    35.1 KB · Affichages: 3

job75

XLDnaute Barbatruc
Bonsoir Diiiloe, xUpsilon, vgendron,

Dans le fichier joint une solution par formules matricielles en I4 et G4 :
Code:
=SIERREUR(INDEX($A4:$F4;PETITE.VALEUR(SI($B4:$F4<>"";COLONNE($B4:$F4));1));"")
Code:
=SIERREUR(INDEX($A4:$F4;GRANDE.VALEUR(SI($B4:$F4<>"";COLONNE($B4:$F4));1));"")
Sur MS 365 la validation par Ctrl+Maj+Entrée n'est pas nécessaire.

A+
 

Pièces jointes

  • diiiloe_excel forum1.xlsx
    46 KB · Affichages: 4

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous,

Pour le dernier, une autre formule non matricielle :
=SIERREUR(INDEX(B4:F4;EQUIV(1E+99;B4:F4));"")

Pour le premier, une autre formule matricielle :
=SIERREUR(INDEX(B4:F4;EQUIV(1;--ESTNUM(B4:F4);0));"")
 

Pièces jointes

  • diiiloe- prem et der- v1.xlsx
    33.5 KB · Affichages: 2
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…