philguejr
Messages postés8Date d'inscriptionjeudi 25 novembre 2010StatutMembreDernière intervention19 janvier 2011
-
1 déc. 2010 à 10:39
jordane45
Messages postés38109Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 mars 2024
-
1 déc. 2010 à 14:14
Bonjour à tous,
J'ai un problème de débutant et je bute dessus depuis plusieurs jours.
J'ai un classeur avec 2 feuilles la première sous forme de formulaire et la seconde sous forme de tableau qui reprend les données saisies sur le formulaire (la première feuille donc).
Je voudrai sous la forme d'une macro vérifier que les données saisies dans le formulaire (feuille1) n'existent pas déjà dans le tableau (feuille2).
Pourriez-vous s'il vous plaît me guider, je ne trouverai pas la solution tout seul.
D'avance merci.
jordane45
Messages postés38109Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention28 mars 2024344 1 déc. 2010 à 11:04
Bonjour,
Par macro, il existe plusieurs possibilités :
La plus simple (mais aussi la plus longue..) : parcourir toutes les données de ta deuxieme feuille et regarder la valeur des cellules. (cf Boucles )
La seconde, beaucoup plus rapide, en utilisant un "FIND".
voici le code que j'utilise :
Function cherchC(nomF As String, valCherch As String) As Boolean
'fonction de recherche...
'**********************************************************
' recherche la valeur 'valCherch' dans la feuille 'NomF'
' et nous retourne vrai si trouvé sinon faux.
'**********************************************************
Dim vc As Variant
Sheets(nomF).Activate
Sheets(nomF).Cells(1, 1).Activate
Set vc = Cells.Find(what:=valCherch, lookAt:=xlWhole, After:=ActiveCell, SearchOrder:=xlByColumns, SearchDirection:=xlNext, LookIn:=xlValues, MatchCase:=False, SearchFormat:=False)
If Not vc Is Nothing Then
cherchC = True
Else
cherchC = False
End If
End Function
et pour appeller la fonction dans ton code (par exemple) :
' teste si "TOTO" est présent dans la feuille 2
If cherchC("Feuil2", "TOTO") = True then
Msgbox "TOTO a été trouvé ! "
End if
Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI