Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lancer un vlookup en vba après choix dans une liste

7 réponses
Avatar
Actarus
Bonjour, sur une cellule j'ai une liste de code et en fonction du code
choisi je souhaite afficher une valeur dans la cellule d'à côté. J'ai donc
la procédure suivante :
If Target.Address = "$E$23" Then
Sheets("mononglet").Range("F23").Value = [VLOOKUP(E23,Infos!G5:H13,2)]
End If
Le pb est que cela ne fonctionne pas dès que j'ai choisi mon code dans la
liste mais la valeur se met à jour après avoir cliqué une fois dans une
autre cellule puis etre revenu dans E23.Je precise qu'il est important que
cette mise à jour se fasse avec du code la solution de mettre la fonction
recherche directement sur la cellule F23 ne convient pas pour ce que je
souhaite faire par la suite. Merci pour votre aide.

7 réponses

Avatar
Daniel.C
Bonjour.
Quel évènement déclenche l'exécution du code ? Peux-tu poster ton
classeur sur www.cjoint.com en remplaçant les données confidentielles.
Poste ensuite ici l'adresse générée.
Cordialement.
Daniel

Bonjour, sur une cellule j'ai une liste de code et en fonction du code choisi
je souhaite afficher une valeur dans la cellule d'à côté. J'ai donc la
procédure suivante :
If Target.Address = "$E$23" Then
Sheets("mononglet").Range("F23").Value = [VLOOKUP(E23,Infos!G5:H13,2)]
End If
Le pb est que cela ne fonctionne pas dès que j'ai choisi mon code dans la
liste mais la valeur se met à jour après avoir cliqué une fois dans une autre
cellule puis etre revenu dans E23.Je precise qu'il est important que cette
mise à jour se fasse avec du code la solution de mettre la fonction recherche
directement sur la cellule F23 ne convient pas pour ce que je souhaite faire
par la suite. Merci pour votre aide.


Avatar
Corto
Bonjour Actarus,
Utilise plutôt la fonction VBA :
[mononglet!F23].Value = Application.VLookup([mononglet!E23], [Infos!G5: H13], 2, False)

Corto
PS: Passes le bonjour à Goldorak lol

Actarus a écrit :
Bonjour, sur une cellule j'ai une liste de code et en fonction du code
choisi je souhaite afficher une valeur dans la cellule d'à côté. J'ai donc
la procédure suivante :
If Target.Address = "$E$23" Then
Sheets("mononglet").Range("F23").Value = [VLOOKUP(E23,Infos!G5:H1 3,2)]
End If
Le pb est que cela ne fonctionne pas dès que j'ai choisi mon code dan s la
liste mais la valeur se met à jour après avoir cliqué une fois da ns une
autre cellule puis etre revenu dans E23.Je precise qu'il est important que
cette mise à jour se fasse avec du code la solution de mettre la fonc tion
recherche directement sur la cellule F23 ne convient pas pour ce que je
souhaite faire par la suite. Merci pour votre aide.





Avatar
Jacky
Bonjour,
Le code fonctionne chez moi.
Il n'y aurait pas un "Application.EnableEvents = False" en cours par hasard
voir ici
http://cjoint.com/?kykYfu6dAl
Ignorer le dernier argument de VLOOKUP n'est pas une bonne idée
Sheets("mononglet").Range("F23").Value = [VLOOKUP(E23,Infos!G5:H13,2,0)]
--
Salutations
JJ


"Actarus" a écrit dans le message de news:
49018604$0$955$
Bonjour, sur une cellule j'ai une liste de code et en fonction du code
choisi je souhaite afficher une valeur dans la cellule d'à côté. J'ai donc
la procédure suivante :
If Target.Address = "$E$23" Then
Sheets("mononglet").Range("F23").Value = [VLOOKUP(E23,Infos!G5:H13,2)]
End If
Le pb est que cela ne fonctionne pas dès que j'ai choisi mon code dans la
liste mais la valeur se met à jour après avoir cliqué une fois dans une
autre cellule puis etre revenu dans E23.Je precise qu'il est important que
cette mise à jour se fasse avec du code la solution de mettre la fonction
recherche directement sur la cellule F23 ne convient pas pour ce que je
souhaite faire par la suite. Merci pour votre aide.



Avatar
Actarus
Merci mais cela ne change rien, la mise à jour n'est pas automatique.
PS : Passes le bonjour à Raspoutine
(Moi aussi je connais mes classiques ! lol !)
Avatar
Actarus
Le code est lancé sur l'évènement "Worksheet_SelectionChange". Poster mon
classeur est difficile le document est "interne et strictement
confidentiel", désolé.
Pour décrire la chose avec précision : en E23 j'ai une liste qui reprend les
valeurs que j'ai sur un autre onglet (cellules G5 à G13 de mon onglet Infos)
et en F23 je dois récuperer la valeur qui figure sur la plage H5 à H13 de
l'onglet Infos.ce binome E23/F23 est present plusieurs fois sur ma feuille
(H23/I23,K23/L23,N23/O23) je ne peux pas ecrire la formule directement sur
la cellule F23 car mes codes/valeurs de l'onglet Infos sont directement issu
d'une liaison avec access qui se fait donc à chaque ouverture du doc et je
ne veux pas que les valeurs de F23 ou I23 .... se mettent à jour avec les
nouvelles valeurs à l'ouverture mais ce sont les anciennes valeurs mises à
jour lors de mon choix dans la liste qui doivent etre conservées. est ce
clair ?!!
Avatar
Corto
Bonjour Actarus,
Mets donc ce code sur l'évènement "Worksheet_Change".
Quand tu changes ta valeur, l'événement l'évènement
"Worksheet_SelectionChange" n'est pas appelé.

Corto
PS: J'ai passé ton bonjour à Raspoutine et il a répondu "je te tuer ai un
jour et Actarus aussi", tu vois il va bien. relol

Actarus a écrit :
Le code est lancé sur l'évènement "Worksheet_SelectionChange". Po ster mon
classeur est difficile le document est "interne et strictement
confidentiel", désolé.
Pour décrire la chose avec précision : en E23 j'ai une liste qui re prend les
valeurs que j'ai sur un autre onglet (cellules G5 à G13 de mon onglet Infos)
et en F23 je dois récuperer la valeur qui figure sur la plage H5 à H13 de
l'onglet Infos.ce binome E23/F23 est present plusieurs fois sur ma feui lle
(H23/I23,K23/L23,N23/O23) je ne peux pas ecrire la formule directement sur
la cellule F23 car mes codes/valeurs de l'onglet Infos sont directement issu
d'une liaison avec access qui se fait donc à chaque ouverture du doc et je
ne veux pas que les valeurs de F23 ou I23 .... se mettent à jour avec les
nouvelles valeurs à l'ouverture mais ce sont les anciennes valeurs mi ses à
jour lors de mon choix dans la liste qui doivent etre conservées. est ce
clair ?!!





Avatar
Actarus
Merci à tous cela fonctionne en déclenchant l'évènement sur
worksheet_change.