Bonsoir,
J'ai développé la macro suivante et je me posais la question, s'il n'y avait pas plus simple en créant une boucle ?
Merci à vous. Bonne soirée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 Sub RechercherContact() Application.ScreenUpdating = False ' Déclaration des variables Dim Ligne As Integer Dim Nom As String ' Message box pour demander une action Nom = InputBox("Veuillez Saisir le prénom et le nom de l'agent administratif") If Nom = "" Then MsgBox "Vous n'avez pas saisi le prénom et le nom de l'agent administratif !" Exit Sub End If ' Recherche le nom de l'agent Range("E4") = Nom ' Effacer les colonnes Range("A4:D4,F4:R4") = Empty ' On commence à la ligne 7 de la colonne ID N° (jusqu'à) la fin du tableau et on revient à la dernière ligne écrite For Ligne = 7 To Range("a999999").End(xlUp).Row 'Résultat de la recherche par le nom et incrémentation dans la cellule de résultat If Range("e" & Ligne) = Range("e4") Then 'On recherche les informations dans les colonnes et on les incrémente dans la ligne de résultat Range("a4") = Range("a" & Ligne) Range("b4") = Range("b" & Ligne) Range("c4") = Range("c" & Ligne) Range("d4") = Range("d" & Ligne) Range("f4") = Range("f" & Ligne) Range("g4") = Range("g" & Ligne) Range("h4") = Range("h" & Ligne) Range("i4") = Range("i" & Ligne) Range("j4") = Range("j" & Ligne) Range("k4") = Range("k" & Ligne) Range("l4") = Range("l" & Ligne) Range("m4") = Range("m" & Ligne) Range("n4") = Range("n" & Ligne) Range("o4") = Range("o" & Ligne) Range("p4") = Range("p" & Ligne) Range("q4") = Range("q" & Ligne) Range("R4") = Range("R" & Ligne) Exit Sub End If ' Recherche dans les autres lignes Next Ligne End Sub
Partager