Re
en effet j'avais mal lu.... tu voulais travailler sur le userform8....
donc je ne sais pas si cela peu t'aider, et surtout si j'ai bien compris....
je ferais le test avant d'ecrire la valeur :
et donc remplacer
With Sheets(FeuilleDeTransfert)
For Each cell In Range(.Cells(LigneDeTransfert, DebutColonneDeTransfert), .Cells(LigneDeTransfert + A, FinColonneDeTransfert))
cell = ComboBox3.Value
Next
End With
par
With Sheets(FeuilleDeTransfert)
For Each cell In Range(.Cells(LigneDeTransfert, DebutColonneDeTransfert), .Cells(LigneDeTransfert + A, FinColonneDeTransfert))
If cell.Value = "" Then
cell = ComboBox3.Value
Else
MsgBox ("Erreur donnée déjà presente")
Exit Sub
End If
Next
End With
a voir donc, difficile de faire des tests ton userform refuse de se lancer sur mon office 2007
fred
EDIT :
on peut faire la boucle deux fois... une pour tester si une donnée est déjà présente dans une des cellules et la deuxième pour écrire
car que doit-il se passer quand une des cellules cible est occupée, on écrit sur les autres quand même ou rien ne doit etre écrit ???