Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

esterreur avec VLookup !?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Novice avance !?

XLDnaute Occasionnel
avec les formules on a le esterreur pour gérer une erreur que l'on connait à l'avance comme par exemple

if(esterreur(recherchev(val;plage;2;faux));"";recherchev(val;plage;2;faux"))

qu'en est-il en code vba pour WorkSheetFunction VLookup(val,plage,2,0) !?
avec

On error resume next
WorkSheetFunction VLookup(val,plage,2,0)
on error goto 0

l'erreur ne bloque pas l'application mais la textbox où est balancé la valeur recherché ne se met pas en cellule vide forcé; elle conserve la valeur précédente


quel est équivalent du esterreur ou estna ou autre en code vba !?

merci par avance
 
Re : esterreur avec VLookup !?

Bonjour novice avance, pierrot

On error resume next
WorkSheetFunction VLookup(val,plage,2,0)
on error goto 0

en faisant comme cela , tu controles l'erreur mais tu ne la traites pas

pour la traiter tu fais :

On error resume goto erreur
WorkSheetFunction VLookup(val,plage,2,0)
goto suite
erreur:
msgbox "La recherche a echoué"
on error goto 0
suite:
suite du code
 
Re : esterreur avec VLookup !?

bonjour,
je suis toujours sur mon problème de gestion d'erreur avec VLookup mais je n'arrive pas à adapter à mon code ce que m'a proposé wilfried_42

sachant que val est le problème et qu'il peut ou ne pas être dans la plage C3: D284 en fonction d'un choix effectué

j'espère que ce code ci-dessous suffira à m'aider parce que sinon il faudrait que je mettes le fichier complet pour plus de cohérence mais il est lourd !?


Private Sub ListBox2_Change()
Dim a, i, j As Byte
Dim lig, val1 As Byte
Dim val As Variant
Dim nom As Variant
Label12.Caption = ListBox1.Value & ListBox2.Value
val = Label12.Caption
val1 = TextBox1.Value

lig = WorksheetFunction.VLookup(val, Range("C3: 284"), 2, 0)
a = WorksheetFunction.VLookup(val1, Range("HG342:HH376"), 2, 0)

j = 2

For i = 1 To 7
Controls("TextBox" & j) = Cells(lig, a)
j = j + 1
a = a + 1
Next i


End Sub


un grand merci par avance
bonne soirée
 
Re : esterreur avec VLookup !?

Bonsoir

Attention "Val" est déjà une fonction vba, ne pas l'utiliser en tant que nom de variable, modifie peut être déjà ton code en ce sens, et dis nous.

bonne soirée
@+
 
Re : esterreur avec VLookup !?

problème résolu
je ne sais pas si le fait d'avoir changé val à changer quelque chose mais je l'ai quand meme fait !? en tout cas merci pour l'info Pierrot93

j'ai pu adapter finalement le code de Wilfried_42 en forçant dans mon cas la valeur de lig et de a

merci beaucoup

bonne soirée🙂 🙂 😀
 
Re : esterreur avec VLookup !?

Salut à tous,

Juste une petite remarque concernant les déclarations de variable qui sont incorrectes:
Dim a, i, j As Byte
Dim lig, val1 As Byte
a, i et lig ne seront pas déclarées en Byte mais en Variant. En effet, il faut que tu les spécifies pour chacune d'entre elles comme ceci:

Dim a As Byte, i As Byte, j As Byte
Dim lig As Byte, val1 As Byte

Bonnne soirée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

N
Réponses
8
Affichages
2 K
M
Réponses
11
Affichages
2 K
Melidan2006
M
T
Réponses
2
Affichages
2 K
T
B
Réponses
1
Affichages
1 K
G
Réponses
19
Affichages
7 K
GregusXS
G
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…