Recherche dans plage

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

D

defgae

Guest
Bonjour à tous,

Je me permets ce petit post pour vous demander de m'éclairer.
En effet, dans une feuille Excel, j'ai un soucis :
J'ai un tableau d'une colonne et de 5 lignes qui est multiplié par le nombre de salariés présents (un tableau de 5 lignes correspond donc à un salarié). La dernière ligne de chaque "tableau" est une ligne "Total". Dans les 4 lignes au dessus, j'ai, de manière aléatoire, soit la présence du nom de mon salarié (le même nom), soit une cellule vide.

J'aimerais créer une macro pour que dans la ligne "Total" de chaque salarié qui est vide puisse s'inscrire le nom du salarié qui est inscrit aléatoirement dans une ou plusieurs des 4 lignes précédentes.

Je joints un fichier Excel pour que vous compreniez mieux, me rendant compte de ma difficulté à m'exprimer.
J'aimerais que sur mon exemple,
-en B10 apparaisse GARCIA
-en B20 apparaisse PRET
-en B30 apparaisse MICHEL
-en B40 apparaisse JUSTE
-en B50 apparaisse SIGNE

Tout en sachant que le nom est pioché dans une des lignes du dessus non vide. Exemple pour que GARCIA apparaisse en B10, il faut le récupérer soit en B7 soit en B8.

Ma requête est-elle possible ?
D'avance merci pour votre aide.
Gaël
 

Pièces jointes

Re : Recherche dans plage

Bonjour Gaël et bienvenue,

Pour autant que j'aie bien compris, commençons par "faire simple": si tu indiques en B10
Code:
=RECHERCHE("zzz";$B6:$B9)
tu obtiens le nom encodé dans une des 4 cellules juste au-dessus. Si les 4 cellules sont vides, un message d'erreur apparaît.
Si tu veux éviter le message d'erreur, tu peux compléter la formule comme suit:
Code:
=SI(ESTNA(RECHERCHE("zzz";$B6:$B9));"";RECHERCHE("zzz";$B6:$B9))
... Toujours en B10.
Il te reste ensuite à copier la cellule B10, puis à la coller en B20, B30, B40, etc.

Tu peux aussi choisir de remplacer les guillemets vides dans la seconde formule, par un texte qui s'afficherait, si les 4 cellules sont vides.

... Reste à voir si cette première proposition convient, si j'ai loupé queque chose d'important ou si la situation est plus complexe que l'exemple que tu nous a déposé.
 
Re : Recherche dans plage

Merci à vous deux, la réponse à ma question se trouve dans le message de Minick.

En effet, le problème avec ta formule Modeste est qu'il faut obligatoirement connaître le nom du salarié pour utiliser la fonction "recherche" Hors j'aimerais automatiser cette fonction, c'est à dire que quelque soit le nom du salarié, il me le ressorte obligatoirement sur la ligne "Total".
C'est pourquoi la formule de Minick est parfaite et fonctionne à merveille.

Il me suffit juste de créer une macro et le tour est joué.

Merci encore.
 
Re : Recherche dans plage

re-bonjour,

J'ai un peu de mal à comprendre en quoi la formule que j'ai proposée oblige à connaître le nom ... le "zzz" était à inscire comme tel dans la formule !? (et je l'avais testée avant de te la soumettre ... tu l'as testée, de ton côté?)
 
Re : Recherche dans plage

Exact, vous avez raison.

Je croyais qu'il fallait remplacer "zzz" par le nom du salarié... Je n'avais pas fait attention.

En revanche il est donc vrai que la formule de Modeste est bien plus simple finalement et fonctionne très bien.

Merci pour tout.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
23
Affichages
486
  • Question Question
Microsoft 365 Insertion de photo
Réponses
14
Affichages
658
Réponses
2
Affichages
325
Réponses
10
Affichages
476
Retour