zesuila
XLDnaute Occasionnel
Bonjour à tous
dans mon usine à gaz qu'est mon fichier, je lui demande (gentiment bien sûr !) en appuyant sur un bouton de me supprimer une ligne dans un onglet (appelons le B, cela lui fera plaisir). Tout se passe à merveille ! la sale petite ligne a disparu ! Mais pour se venger, elle me laisse un message d'erreur, la petite garce.
En effet dans cet onglet B, lorsque je veux supprimer une ligne, la ligne s'efface bien mais j'ai tout de suite après une boite message me disant "erreur d'execution 13. imcompatibilité de type"
et en faisant débogage (oui je sais je suis un lâche !! même pas capable de me défendre tout seul !!!), je tombe sur ce code avec
If Application.WorksheetFunction. _
CountIf(Range(Cells(2, 1), _
Cells(Target.Row, 1)), Target.Value) > 1 Then
souligné
ci dessous le code complet (que j'ai bien évidemment sournoisement piqué à un forumeur de ce site mais dont je ne me rappelle plus le nom.😱)
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then
' pour vérifier si la saisie n'existe pas déjà dans les lignes précédentes
If Application.WorksheetFunction. _
CountIf(Range(Cells(2, 1), _
Cells(Target.Row, 1)), Target.Value) > 1 Then
' pour vérifier si la saisie n'existe pas déjà dans la colonne
If Application.WorksheetFunction. _
CountIf(Range("A:A"), Target.Value) > 1 Then
MsgBox "STOP -- DOUBLON"
Target.Value = ""
Target.Select
End If
End If
End If
'colonne à "surveiller" (ici colonne A)
End Sub
Je précise que si je fais fin au lieu de débogage, tout se passe bien après , ma ligne a bien disparu mon fichier est là, bref tout va bien sauf cette "info", on va l'appeler comme ça, de visual basic!
ALors charmant(es) forumeu(ses)rs, une suggestion, avant de passer à l'acte !!!😀
dans mon usine à gaz qu'est mon fichier, je lui demande (gentiment bien sûr !) en appuyant sur un bouton de me supprimer une ligne dans un onglet (appelons le B, cela lui fera plaisir). Tout se passe à merveille ! la sale petite ligne a disparu ! Mais pour se venger, elle me laisse un message d'erreur, la petite garce.
En effet dans cet onglet B, lorsque je veux supprimer une ligne, la ligne s'efface bien mais j'ai tout de suite après une boite message me disant "erreur d'execution 13. imcompatibilité de type"
et en faisant débogage (oui je sais je suis un lâche !! même pas capable de me défendre tout seul !!!), je tombe sur ce code avec
If Application.WorksheetFunction. _
CountIf(Range(Cells(2, 1), _
Cells(Target.Row, 1)), Target.Value) > 1 Then
souligné
ci dessous le code complet (que j'ai bien évidemment sournoisement piqué à un forumeur de ce site mais dont je ne me rappelle plus le nom.😱)
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then
' pour vérifier si la saisie n'existe pas déjà dans les lignes précédentes
If Application.WorksheetFunction. _
CountIf(Range(Cells(2, 1), _
Cells(Target.Row, 1)), Target.Value) > 1 Then
' pour vérifier si la saisie n'existe pas déjà dans la colonne
If Application.WorksheetFunction. _
CountIf(Range("A:A"), Target.Value) > 1 Then
MsgBox "STOP -- DOUBLON"
Target.Value = ""
Target.Select
End If
End If
End If
'colonne à "surveiller" (ici colonne A)
End Sub
Je précise que si je fais fin au lieu de débogage, tout se passe bien après , ma ligne a bien disparu mon fichier est là, bref tout va bien sauf cette "info", on va l'appeler comme ça, de visual basic!
ALors charmant(es) forumeu(ses)rs, une suggestion, avant de passer à l'acte !!!😀