Problème avec une macro = Erreur d'exécution '13' Incompatibilité de type.

Cydor007

XLDnaute Occasionnel
Bonjour à tous,

J'ai besoin de votre aide pour régler un problème.

Pour faciliter mon entrée de donnée dans mon tableau, j'ai créé un outil (macro) qui rempli certains champs automatiquement. Le problème est que quand j'efface une ligne qui contenait les champs remplis, j'obtiens l'erreur d'exécution 13.

Voici mon outil:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
If Target.Value <> 0 Then
lig = Target.Row
Cells(lig, 11).Value = "oui"
Cells(lig, 12).Value = "non"
Cells(lig, 13).Value = "non"
Cells(lig, 14).Value = "non"
Cells(lig, 15).Value = "non"
End If

Avez-vous une idée pour que cette erreur ne s'applique pas? J'ai pensé que lors que les informations s'efface, que l'outil sort de la macro avec Exit Sub.

Merci;)
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Problème avec une macro = Erreur d'exécution '13' Incompatibilité de type.

Bonsoir Cydor007,

Essayez ce code :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column <> 1 Or Target.Count <> 1 Then Exit Sub
  If Target <> 0 Then
    lig = Target.Row
    Application.EnableEvents = False
    Cells(lig, 11).Value = "oui"
    Cells(lig, 12).Value = "non"
    Cells(lig, 13).Value = "non"
    Cells(lig, 14).Value = "non"
    Cells(lig, 15).Value = "non"
    Application.EnableEvents = True
  End If
End Sub
 
Dernière édition:

Cydor007

XLDnaute Occasionnel
Re : Problème avec une macro = Erreur d'exécution '13' Incompatibilité de type.

Super mapomme,

Après avoir testé dans mon classeur, tout est conforme.

Merci de ton Aide.

Cydor007:D

Bonsoir Cydor007,

Essayez ce code :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column <> 1 Or Target.Count <> 1 Then Exit Sub
  If Target <> 0 Then
    lig = Target.Row
    Application.EnableEvents = False
    Cells(lig, 11).Value = "oui"
    Cells(lig, 12).Value = "non"
    Cells(lig, 13).Value = "non"
    Cells(lig, 14).Value = "non"
    Cells(lig, 15).Value = "non"
    Application.EnableEvents = True
  End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16