Recherche dans plusieurs colonnes via fonction ou VBA?

Bonjour à tous, je recherche une façon de faire une recherche d'un nom de personne dans plusieurs colonnes et lignes dans différents onglets.

Il s'agit d'un tableau de répartition de bénévoles. Je dois faire un récap sur le dernier onglet pour pouvoir l'envoyer par mail aux intéressés.

Cependant aucune fonction ne m'a permis de faire cette recherche multiple. Une possibilité peut etre avec la RechercheX mais elle n'est pas accessible ds Excel 2017.

Je vous met le fichier en PJ, merci

41essai.xlsx (17.76 Ko)

Edit modo : je n'ai rien dis

bonjour BrunoM45, GM22,

avec une macro peut-être ?

Sub teste()
     Chercher "Bart"                         'cherchez le nom "Bart"
End Sub

Sub Chercher(Nom As String)
     Dim UN    As Range, c, FA, WS

     For Each WS In ActiveWorkbook.Worksheets     'boucle les feuilles
          If StrComp(WS.Name, "Feuil1", 1) <> 0 Then     'sauf la feuille "Feuil1" par exemple
               Set UN = Nothing              'RAZ
               FA = ""
               With WS.UsedRange             'cherchez dans cette plage
                    Set c = .Find(What:=Nom, After:=.Cells(1), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False)
                    If Not c Is Nothing Then
                         FA = c.Address
                         Do
                              Set UN = Union(IIf(UN Is Nothing, c, UN), c)
                              Set c = .FindNext(c)
                         Loop While Not c Is Nothing And c.Address <> FA
                    End If
               End With
               If Not UN Is Nothing Then s = s & vbLf & WS.Name & " >>>  " & UN.Address(0, 0)
          End If
     Next WS

     If Len(s) > 0 Then MsgBox Mid(s, 2)     'les feuilles & cellules qui sont un "match"

End Sub

Merci bcp je vais essayer cela, je vous tiens au courant

@BrunoM45, que veux tu dire par "Edit Modo"

Bon je débute vraiment en Macro donc je ne comprends pas tout et je n'ai pas réussi a trouver mes réponse en cherchant par moi meme... désolé

ds la macro détaillé ci dessus, cela fonctionne toutefois quelque points que je souhaiterais modifier.

-Puis-je au lieu de faire une Macro pour chaque nom recherché, au lieu de taper le nom recherche mettre la valeur d'une cellule et que lorsque je change la valeur de cette cellule, la recherche s'effectue sur cette nouvelle valeur?

- le résultat est une ligne et colonne ou se trouve la recherche mais j'aimerais que cela me donne plutôt le nom de la colonne et de la ligne correspondantes (un genre de touché coulé)

- comment mettre les résultats directement ds le tableau un nom pas dans un message box?

C'est peut être infaisable?

Merci

Bonsoir,

Pour commencer,
lorsque vous demandez "je recherche une façon de faire une recherche d'un nom de personne dans plusieurs colonnes et lignes dans différents onglets"

Donnez nous un fichier anonymisé qui correspond à votre demande

Ensuite dans ce fichier, indiquez ce que vous souhaitez comme résultat

Car là, franchement c'est plus que flou

A+

Bonsoir, il me sembnalit que le fichier était déjà plus haut mais le voici avec la macro enregistrée ainsi que le résultat recherché

bonsoir BrunoM45,GM22,

presque la même macro que plus haut.

Merci Beaucoup BsAlv!! ca marche super!!

Toutefois j'aimerais comprendre un peu ce qui ce passe!! j'ai suivi les différentes diapo sur ce site sur l'initiation aux macros. Mais je galere un peu.

par exemple si dans l'onglet récap, je souhaite ajouter une date juste après le jour, la macro ne fonctionne plus...

Et d'autres parts, la recherche actuelle s'effectue sur tous les jours (J, V, S, D) mais est ce que si j'augmente les plages de recherche sur ces jours, la recherche se fait elle quand même?

Je trouve ça vraiment dingue les macros. comment peut on bien se former? je ne trouve de vidéo nulle part? livres?

Merci

re,

j'ai ajouté du commentaire dans la macro, mais on n'apprend pas cela en 10 minutes ... .

La macro cherche par exemple "jeudi" dans la plage B1:B30 et voit que c'est la ligne 7. Si vous ajoutez une feuille "Lundi" et il y a un "Lundi" dans la plage B1:B30 de "Récap", alors pas de problèmes, autrement vous modifiéz ce B1:B30 en B1:B50 ... .

C'est la seule chose à faire.

Oui je vois que cela ne semble pas super ludique à apprendre mais ca donne envie.

bon j'ai encore quelques questions:

J'ai souhaité modifier l'onglet récapitulatif, cependant mes modifications ne restent pas (j'imagine que c'est du à la macro), je souhaite ajouter une cellule mail pour envoyer un mail directement.

J'ai tenté d'écrire une nouvelle macro pour ajouter un bouton "envoyer" sur ce mail onglet.

Je ne sais pas si j'ajoute cette macro a la suite de l'autre ou si j'en crée une nouvelle qui s’exécute après.

Dans tous les cas dans l'état actuel cela ne fonctionne pas.

re,

oei thunderbird, j'ai cela quelque part mais où ?

Hola!

En fait j'ai 2 soucis:

- je voulais ajouter une fonction Index Equiv pour récupérer l'adresse mail correspondant a chaque nom et le mettre ds une case a coté ds mon onglet recap.

Cependant cela fonctionne mais lorsque je change de nom, la fonction disparait...

- Ensuite l'autre questionnement est sur l'envoi de mail, en gros j'aimerais mettre un bouton envoi;

-- je change le nom, les horaires sur le récap se modifie, (ça c'est top ça marche!) ensuite j'aimerais envoyer un mail type avec ce tableau de recap à tout les gens (270 en tout sur la version complète

Et après promis mon projet sera fini!!!!

re,

c'est quelque chose nouveau cela, cet application "Thunderbird", je la connais pas.

Bonjour le fil

Barte de quelle planète tu viens Thunderbird est l'application mail de chez Mozilla

GM22, navré pour vous, mais ça ne se manipule que par commande via VBA
https://forum.excel-pratique.com/excel/envoi-mail-avec-thunderbird-totalement-automatique-115259

Bonne soirée

@BrunoM45, je référais à la macro que GM22 avait dans son fichier qui semblait vraiment à Outlook, mais qui ne fonctionne pas.

La macro dans mon fichier, je n'ai pas vraiment vérifié jusqu'au dernier bit, mais c'est 99,9% le même. Le seul truc ambetant, c'est que les num-locks sont désactivés après l'exécution de la macro.

heyheyhey bonsoir @BrunoM45 et @BsAlv!

c'est dingue!! ca fonctionne presque! j'ai a peu près réussi avec Thunderbird,

Toutefois, j'ai l'impression que le programme tente d'envoyer les mail les uns après les autres.

Je cherche la solution pour:

1- on modifie le nom ds l'onglet "Récap", on vérifie les infos, puis on clique sur "Envoyer", la fenêtre Thunderbird s'ouvre, et on envoie

2- on change de nom etc etc...

---> Actuellement j'ai l'impression que la macro fait le tour et envoi a tout le monde d'un coup, je clique sur envoyer, la fenetre d'impression s'ouvre, je la ferme, la fenetre Thunderbird s'ouvre pour un envoi à "Jean luc Brillant", je l'envoi. Puis une nouvelle fenetre d'impression s'ouvre, je la ferme, la fenetre Thunderbird s'ouvre etc etc...

3- oui cela peut sembler fastidieux mais j'ai un besoin de vérif à chaque mail

4- je tente d'ajouter dans le body du mail "bonjour "le nom sui se trouve ds le récap" etc etc...

5- ou puis je modifier le nom de la pièce jointe en "Convocation bénévole 2023"

j'ai tenté plein de chose mais il faut vraiment que je me perfectionne en VBA!!

Et question subsidiaire, c'est quoi les Nums Locks

Dans tous les cas, un énorme merci de passer du temps sur mon problème!

Bonne soirée

re,

dans cette version, le mail ne sera plus envoyé, vous devez le faire un par un, donc le problème des Num-Locks (verrouillage numérique) ne se passe plus (les chiffres ne fonctionnement plus temporairement)

Thunderbird , je l'utilise aussi, n'est pas si facile que Outlook, parce que ce n'est pas de Microsoft (Bruno le disait déjà, c'est Mozilla) et on n'a pas vraiment un "handshake" entre les 2, donc il faut temporiser un petit peu, combien, cela dépend de votre système, 2 secondes à chaque fois ???

Pour le sujet et le body du mail, vous pouvez modifier cela dans le module "ModuleThunderbird". Pour le moment le PJ est un "jpg", mais "pdf" est aussi possible

image
Rechercher des sujets similaires à "recherche colonnes via fonction vba"