Bonsoir Bernard, Jean-Marie, le Forum
Oui comme tu dis justement assez difficile de présager ce qui se passe depuis un autre logiciel inconnu.
Bon on peut essayer deux choses :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim L As Long
If Intersect(Target, Range("A1")) Is Nothing Then: Exit Sub
L = IIf(Range("B1") = "", 1, Range("B65536").End(xlUp).Row + 1)
Cells(L, 2) = Range("A1")
End Sub
On ne vide plus "A1" (de toute manière cette valeur sera écrasée)
Sinon si l'évènement "Change" n'est peut être pas capté alors on peut essayer l'évènement Calculate en prenant soins de mettre dans une cellule quelconque (non utilisée) une formule du Style
=SI(A1="";"Formule Bidon Pour déclencher l'événement Calculate";CONCATENER(A1;"Formule Bidon Pour déclencher l'événement Calculate"))
Et Donc dans le Private Module de Feuille (en écrivant j'y pense, as-tu bien mis le code dans le Private Module de Feuille ?) :
Private Sub Worksheet_Calculate()
Dim L As Long
If ActiveCell.Address <> "$A$1" Then
L = IIf(Range("B1") = "", 1, Range("B65536").End(xlUp).Row + 1)
Cells(L, 2) = Range("A1")
End If
End Sub
Voilà, c'est tout ce que je vois pour l'instant... Mais j'ai souvenir que j'envoyais le code d'un Code Barre envoyé depuis un Scanner à main dans la cellule A1, vers un UserForm qui remontait la BDD pour donner le nom de l'article, et je captais bien l'évènement...
Bon Courage
@+Thierry