Création macro recherche, sélectionne des cellules par rapport a une autre
Bonsoir, j’ai besoin d’aide sur la création d’un bouton qu’il faut que j’intègre à un fichier de suivi des SAV.
Je vous explique, le fichier que j’utilise à plusieurs colonnes dont A ou qui est rempli par un numéro de commande et G qui est rempli par "oui" ou "non" .
J’aimerais, quand j’appuie sur le bouton, que cela recherche toutes les cellules où j’ai rempli "oui" en G et que cela me sorte dans une boîte de dialogue la liste des numéros de commande correspondants.
Par exemple :
| A | G |
| 101 | OUI |
| 105 | OUI |
| 436 | NON |
| 578 | OUI |
| 690 | NON |
Boite de dialogue : 101; 105; 578
Voila j’espère mettre bien expliquer
Je vous laisse ne pj le tableur
Merci par avance de votre aide
Bonjour Arthur101310 et
Une petite présentation ICI serait la bienvenue
Si vous ne l'avez pas encore fait, je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum
Concernant votre demande, voici le code à mettre dans un module et à lier à une forme ou un bouton
Sub RechercheCdeOui()
Dim dLig As Long, Lig As Long
Dim Msg As String
' Avec la feuille
With ThisWorkbook.Sheets("Feuil1")
' Dernièreligne remplie du tableau
dLig = .Range("A" & Rows.Count).End(xlUp).Row
' Pour chaque ligne à partir de la 3
For Lig = 3 To dLig
' Vérifier si Rétractation = OUI
If InStr(1, .Range("G" & Lig), "OUI", vbTextCompare) > 0 Then
Msg = Msg & .Range("A" & Lig).Value & ", "
End If
Next Lig
End With
' Supprimer la dernière vigule du message
Msg = Left(Msg, Len(Msg) - 2)
MsgBox "Rétractation des commandes : " & Msg
End SubMerci de votre participation
Cordialement
Bonjour Bruno,
Merci beaucoup pour votre aide
J'aimerais que cela prenne en compte aussi la colonne "H", a l'inverse de la colonne "rétractation" que cela sélectionne les cellules où j'ai marqué "NON" en plus de la première condition sur la colonne "G". Et qu'une fois a que j'ai cliqué sur ce bouton que les colonnes "H" où c'est marqué "NON" passe en "OUI" pour que la prochaine fois que j'utilise le bouton cela ne reprenne pas les lignes qui ont déjà été traité.
j'ai essayé d'ajouter une seconde conditions pour que cela prenne en compte la colonnes "H" mais cela me fait "erreur de syntaxe" :
If InStr(1, .Range("G" & Lig), "OUI" And Range ("H" & Lig), "NON", vbTextCompare) > 0 Then
Je vous remercie par avance de votre aide, vous me sauver la vie :D
Re,
Vous pouvez remplacer la formule par
If UCASE( .Range("G" & Lig)) = "OUI" And UCASE( .Range("H" & Lig)) = "NON" ThenC'est pour être certain de comparer les bonnes valeurs, car "Oui" n'est pas égal à "OUI" en comparaison VBA
A+