XL 2010 Code VBA RechercheV

spike29

XLDnaute Occasionnel
Bonjour,

J'ai un code permettant de lancer une RechercheV qui fonctionne plutôt bien dans l'état.
Dans la Feuil1 de mon fichier j'ai un tableau, la longueur de ce tableau est variable de quelques centaines de lignes à parfois plus de 1000.
Les valeurs de la colonne B viennent donc se mettre à jour selon un tableau de données présent dans la Feuil Data.

J'aimerais que mon code RechercheV ne fonctionne qu'a condition qu'il y ait une valeur dans la colonne B qu'il interroge. Car aujourd'hui, dès lors qu'il n'y a plus de valeur la mention #N/A apparaît jusqu'à la ligne 5000 en l’occurrence au vu de mon code ci-dessous (ce qui est logique car il n'y a plus de valeur renvoyé pour la rechercheV).

VB:
With Sheets("Feuil1")
    .Range("B26:B5000").Value = WorksheetFunction.VLookup(.Range("B26:B5000").Value, Sheets("Data").Range("K14:L58"), 2, False)

End With


Je ne sais pas si j'ai été suffisamment clair concernant mon besoin, n'hésitez pas s'il faut que je précise.

Merci d'avance et bonne fin de journée :)
 
Solution
Bonjour Spike, le forum

J'ai modifié le code dans ton fichier.
Maintenant il s'adapte automatiquement au nombre de ligne que tu as et la rechercheV refuse de se lancer une 2eme fois si tu l'as déjà fait.
Si tu veux de nouveau relancer la rechercheV tu as 2 manières :
1)Fermer et réouvrir le fichier
OU
2)Mettre à zéro la valeur qui est Sheets("Data").Range("A1").Value
La cellule est modifiable ici.
1607456084507.png


@Phil69970

spike29

XLDnaute Occasionnel
Bonjour Phil et merci pour ta réponse.

Malheureusement cela ne fonctionne pas chez moi.
En PJ un fichier illustrant mon besoin. A savoir ne plus avoir des #N/A qui apparaissent lorsqu'il n'y a plus de valeur dans la colonne B en Feuil1.
Autre point, après avoir déclenché une 1ère fois ma macro avec succès si je décide de la relancer cette fois ci c'est sur l'ensemble de la colonne B qu'il y a des #N/A (logique in fine car la rechercheV ne trouve plus de valeur correspondante dans la Feuil Data.
J'aimerai que dans ce cas précis, si durant la rechercheV aucunes valeurs correspondante n'est trouvée dans la Feuil Data que la valeur en colonne B Feuil1 reste inchangée et qu'il n'y ait plus de " #N/A " qui apparaissent.

La macro rechercheV se déclenche via le bouton macro en Feuil1

Merci d'avance pour ton aide.

Bonne fin de journée
 

Pièces jointes

  • test2.xlsm
    18.3 KB · Affichages: 15

Phil69970

XLDnaute Barbatruc
Bonjour Spike, le forum

J'ai modifié le code dans ton fichier.
Maintenant il s'adapte automatiquement au nombre de ligne que tu as et la rechercheV refuse de se lancer une 2eme fois si tu l'as déjà fait.
Si tu veux de nouveau relancer la rechercheV tu as 2 manières :
1)Fermer et réouvrir le fichier
OU
2)Mettre à zéro la valeur qui est Sheets("Data").Range("A1").Value
La cellule est modifiable ici.
1607456084507.png


@Phil69970
 

Pièces jointes

  • test2 V2.xlsm
    22.4 KB · Affichages: 18

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa