erreur execution 13

GHISLAIN

XLDnaute Impliqué
bonjour a tous ,

je controle la saisie pour eviter les doublons, si un doublon est detecté la macro efface la cellule saisie mais je voudrais qu elle supprime egalement des colonnes
le code que j'utilise est
Dim Ref As String
Dim Cell As Range, Plage As Range
If Application.Intersect(Target, Range("C1:av1")) Is Nothing Or IsEmpty(Target.Value) Then Exit Sub

Ref = Target.Value
Set Plage = Range("C1:av1")
If Application.WorksheetFunction.CountIf(Plage, Ref) > 1 Then
Set Cell = Plage.Find(Ref, Target, xlValues, xlWhole)
MsgBox "LE NOM EST DEJA SAISIE " & Cell.Address, vbCritical, "DOUBLON"

Target.Activate
Target.ClearContents

Columns("C:I").Select
Selection.Delete Shift:=xlToLeft
End If


l erreur d execution 13 s effectue a cette ligne Ref = Target.Value

je n arrive pas a co ntourner le souci

merci de votre aide et suggestion

cordialement

ghislain
 

Dranreb

XLDnaute Barbatruc
Re : erreur execution 13

Bonjour.
Il est très probable que votre Target comporte plusieurs cellules. Dans ce cas sa propriété Value est un tableau de Variant qui ne peut être affecté à un String. Éliminez du traitement ce cas, ou prenez Target(1, 1).Value, si ça peut venir inévitablement du fait que Target est un groupe de cellules fusionnées (quelle poisse ce truc là !)
Cordialement.
 

GHISLAIN

XLDnaute Impliqué
Re : erreur execution 13

Bonjour Dranreb,

merci d'etre passée sur mon fil
apres avoir suivi tes conseilles , il apparait que la cellule Ref = Target.Value etant fusionné de c a i ne lui plaise pas
j ai opté donc a rajouter une ligne non fusionnée en haut du coup ca fonctionne sans erreur

merci a toi de m avoir eclairé

bonne journee

cordialement

ghislain
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote