Bonjour,

J'ai un tableau en entrée "TdB", qui contient des références de commandes en colonne A et l'état de ces commandes en colonne B.
Il y a 5 états différents pour une référence : "EN_COURS", "MAD", "ANNULEE", "REJETEE" et "TERMINEE". L'état d'une commande est mis à jour automatiquement (via une connexion à une base de donnée auquel je n'ai pas accès).
Une commande peut passer d'un état à l'autre sans logique particulière : une commande terminée peut devenir en cours par exemple...
Les références de commandes sont supprimés de ce tableau lors de la mise à jour, si l'état reste le même pendant un certain temps.

J'ai un tableau en sortie "Report" qui possède les mêmes colonnes, et je souhaite mettre à jour l'état des commandes dans ce tableau via une macro. La fonction VlooUp semble appropriée pour récupérer l'état depuis le "TdB". Seulement dans ce tableau, on doit garder toutes les références de commande, y compris celles qui disparaissent du "TdB" => dans ce cas l'état de la commande ne doit pas évoluer.

Voici mon bout de code actuel, présent dans le fichier de sortie "Report" (Report et TdB sont des woorksheets) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
For A = 2 To Range("A1000000").End(xlUp).Row
    If Range("B" & A) = "" Then
            With Report
            .Range("B" & A).Value = WorksheetFunction.VLookup(.Range("A" & A).Value, _
            TdB.Range("A1:B50000"), 2, False)
            End With
    End If
Next
Comment faire pour que ma fonction ne mette pas à jour l'état de ma commande si la référence n'est plus présente dans mon "TdB"?

Je précise que cette macro sera activée très régulièrement, et qu'elle réalise beaucoup d'autres actions (mes tableaux ne contiennent pas que 2 colonnes en réalité). Donc je ne cherche pas une solution par formule Excel

Merci!