WorksheetFunction.VLookup pb
Résolu/Fermé5 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 753
17 juin 2020 à 10:49
17 juin 2020 à 10:49
Bonjour,
Utiliser, au préalable, WorksheetFunction.CountIf :
https://docs.microsoft.com/fr-fr/office/vba/api/excel.worksheetfunction.countif
Utiliser, au préalable, WorksheetFunction.CountIf :
https://docs.microsoft.com/fr-fr/office/vba/api/excel.worksheetfunction.countif
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 753
17 juin 2020 à 14:14
17 juin 2020 à 14:14
Tu testes, d'abord, s'il y a 15 dans ta colonne R, grâce à CountIf...
Simplement :
Simplement :
Sub essai() Dim numligne As Long If WorksheetFunction.CountIf(Range("R75:R110"), 15) > 0 Then numligne = WorksheetFunction.VLookup(15, ActiveSheet.Range("R75:U110"), 4, False) Else MsgBox "15 n'est pas trouvé en colonne R" End If End Sub
désolé pijaku mais en me rendant à cette adresse je ne vois absolument pas comment procéder!!!
voila la ligne de code :
numligne = WorksheetFunction.VLookup(15, ActiveSheet.Range("R75:U110"), 4, False)
si le nb 15 n'est pas dans la liste j'ai l'erreur
Peux tu me corriger stp
Un grand merci
voila la ligne de code :
numligne = WorksheetFunction.VLookup(15, ActiveSheet.Range("R75:U110"), 4, False)
si le nb 15 n'est pas dans la liste j'ai l'erreur
Peux tu me corriger stp
Un grand merci
Et oui ............ comme tjrs pijaku tu es un génie !!!!!
Cela marche admirablement bien. Si j'ai bien compris je place le contenu de ta macro essai avant ma recherche. Si le N° existe, je continue autrement msgbox d'avertissement et je quitte.
Bon c'est décidé malgré mes 80 ans, quand je serais grand je ferais le même métier que toi c'est tellement beau (mdr)
Un grand merci pijaku tu ne peux t'imaginer le service que tu viens de me rendre.
Je vais pouvoir m'endormir sereinement
Bonne journée et, au risque de me répéter, un grand merci à toi
Cela marche admirablement bien. Si j'ai bien compris je place le contenu de ta macro essai avant ma recherche. Si le N° existe, je continue autrement msgbox d'avertissement et je quitte.
Bon c'est décidé malgré mes 80 ans, quand je serais grand je ferais le même métier que toi c'est tellement beau (mdr)
Un grand merci pijaku tu ne peux t'imaginer le service que tu viens de me rendre.
Je vais pouvoir m'endormir sereinement
Bonne journée et, au risque de me répéter, un grand merci à toi
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 753
17 juin 2020 à 14:28
17 juin 2020 à 14:28
En fait, dans ta macro, remplace ta ligne de VLookup par :
If WorksheetFunction.CountIf(Range("R75:R110"), 15) > 0 Then numligne = WorksheetFunction.VLookup(15, ActiveSheet.Range("R75:U110"), 4, False) Else MsgBox "15 n'est pas trouvé en colonne R" End If
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question