XL 2016 Recherche 1er cellule contient une date si cellule est vide

  • Initiateur de la discussion Initiateur de la discussion achraf26
  • 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 !

achraf26

XLDnaute Occasionnel
Bonjour tous le monde,
je suis de retour après un blocage au niveau d'une fonction.
j'avais mis comme solution la fonction 9^9
pour une condition : si la colonne B contient un chiffre, la colonne D prend la valeur de la 1er date dans la colonne C .
dans la cellule E8 =SI([@C]="";RECHERCHE(9^9;C8:C9);"aaaa") qui trouve directement la 1er date disponible.

le problème c'est quand je supprime une ligne d'un tableau c'est que ça peut arriver, Exemple :
je supprime la ligne 9 la fonction change et devient : RECHERCHE(9^9;C8:C8)

pour toute solution je suis preneur.
un grand merci
 

Pièces jointes

Bonjour

essaie en changeant la formule de ta première ligne
=SI([@C]="";TEXTE(RECHERCHE(9^9;C8:$C$21);"aaaa");"")


à noter que avec ta formule actuelle, il me semble que ca ne marchera pas forcément.. la.. ca tombe en marche parce que tu as systématiquement une date juste en dessous du chiffre..
ex: dans ton tableau initial: efface la date en C9==> alors tu as N/A en E8
 
Dernière édition:
Bonjour,
Peut être comme ceci
En cellule D8 = SI(ESTNUM([@B])=VRAI;INDEX(C8:C9;EQUIV(FAUX;ESTNUM(B8:B9);0));"") à valider par CTRL+MAJ+ENTER (car formule matricielle)

1687427300590.png


Edit: Bonjour @vgendron . Ta remarque est pertinente une fois de plus.

@+ Lolote83
 
Bonjour,
Peut être comme ceci
En cellule D8 = SI(ESTNUM([@B])=VRAI;INDEX(C8:C9;EQUIV(FAUX;ESTNUM(B8:B9);0));"") à valider par CTRL+MAJ+ENTER (car formule matricielle)

Regarde la pièce jointe 1173171

Edit: Bonjour @vgendron . Ta remarque est pertinente une fois de plus.

@+ Lolote83

Bonjour Lolote,
la fonction marche super bien comme la mienne, mais le problème n'est pas résolu, car la suppression de la ligne contient F, perturbe la calcule du coup il ne prend pas la valeur (25-6-23) qui suit.
exemple la ligne 13 supprimé, elle doit prendre .
Merci lolotte
 
Avec la fonction DECALER de mon post #5 pas de problème si suppression de ligne.

On peut aussi utiliser cette fonction VBA à placer dans un module standard :
VB:
Function Date_suivante(ref As Range, colonne As Range)
Dim i&
For i = ref.Row - colonne.Row + 1 To colonne.Row + colonne.Rows.Count - 1
    If IsDate(colonne(i)) Then Date_suivante = colonne(i): Exit Function
Next
End Function
Formule en E8 :
Code:
=SI([@C]="";ANNEE(Date_suivante([@C];[C]));"")
 

Pièces jointes

- 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

Réponses
3
Affichages
389
Réponses
4
Affichages
56
Réponses
1
Affichages
237
Réponses
5
Affichages
553
Retour