Problème d'incompatibilité
jacinthelafleur
Messages postés
89
Date d'inscription
Statut
Membre
Dernière intervention
-
lermite222 Messages postés 9042 Statut Contributeur -
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,
j'ai un problème avec ma macro. Lorque je la fait tourner, j'ai un message d'erreur qui apparait "erreur d'exécution 13 incompatibilité de type". Je n'arrive pas à trouver mon erreur. Pouvez-vous me dire s'il vous plait ce qui ne va pas dans le code de ma macro?
Voici mon code :
Private Sub Command()
Dim k As Integer
Dim j As Integer
Dim r As Integer
For k = 1 To 300
For j = 1 To 300
If Range("A" & k).Value = Range("A" & j).Value And _
Range("B" & k).Value <> "" And Range("C" & k).Value = Range("C" & j).Value And _
Range("E" & k).Value = Range("E" & j).Value And Range("I" & k).Value = Range("I" & j).Value And Range("K" & k).Value = Range("K" & j).Value And Range("L" & k).Value = Range("L" & j).Value Then If Range("B" & j).Value = "" Then
r = j - k
Range("J" & (j - r)).Value = Range("J" & j).Value
Range("M" & (j - r)).Value = Range("M" & j).Value
Range("N" & (j - r)).Value = Range("N" & j).Value
Range("O" & (j - r)).Value = Range("O" & j).Value
Range("P" & (j - r)).Value = Range("P" & j).Value
Range("Q" & (j - r)).Value = Range("Q" & j).Value
Range("AJ" & (j - r)).Value = Range("AJ" & j).Value
Range("AK" & (j - r)).Value = Range("H" & j).Value
Range("AL" & (j - r)).Value = Range("I" & j).Value - Range("J" & j).Value
End If
End If
Next
Next
End Sub
se sont les lignes en gras qui sont soulignées en jaune.
Merci beaucoup pour votre aide.
Bien cordialement
Jacinthelafleur.
j'ai un problème avec ma macro. Lorque je la fait tourner, j'ai un message d'erreur qui apparait "erreur d'exécution 13 incompatibilité de type". Je n'arrive pas à trouver mon erreur. Pouvez-vous me dire s'il vous plait ce qui ne va pas dans le code de ma macro?
Voici mon code :
Private Sub Command()
Dim k As Integer
Dim j As Integer
Dim r As Integer
For k = 1 To 300
For j = 1 To 300
If Range("A" & k).Value = Range("A" & j).Value And _
Range("B" & k).Value <> "" And Range("C" & k).Value = Range("C" & j).Value And _
Range("E" & k).Value = Range("E" & j).Value And Range("I" & k).Value = Range("I" & j).Value And Range("K" & k).Value = Range("K" & j).Value And Range("L" & k).Value = Range("L" & j).Value Then If Range("B" & j).Value = "" Then
r = j - k
Range("J" & (j - r)).Value = Range("J" & j).Value
Range("M" & (j - r)).Value = Range("M" & j).Value
Range("N" & (j - r)).Value = Range("N" & j).Value
Range("O" & (j - r)).Value = Range("O" & j).Value
Range("P" & (j - r)).Value = Range("P" & j).Value
Range("Q" & (j - r)).Value = Range("Q" & j).Value
Range("AJ" & (j - r)).Value = Range("AJ" & j).Value
Range("AK" & (j - r)).Value = Range("H" & j).Value
Range("AL" & (j - r)).Value = Range("I" & j).Value - Range("J" & j).Value
End If
End If
Next
Next
End Sub
se sont les lignes en gras qui sont soulignées en jaune.
Merci beaucoup pour votre aide.
Bien cordialement
Jacinthelafleur.
3 réponses
-
Bonjour,
??
la ligne ->If Range("B" & j).Value = "" Then
Soit c'est à remplacer par un And et supprimer le Then ou alors cette ligne doit être sur une nouvelle ligne et y manque un End If
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée . -
Bonjour,
merci pour votre réponse, mais le message d'erreur apparait toujours! je n'arrive pas à trouver mon erreur!
jacinthelafleur -
Toujours sur la même ligne ?
Montre le code comme il est maintenant.
De toutes façons, tu auras toujours une erreur plus bas.
r = j - k
avec tes deux boucles tu pourrais avoir j=1 et k=300 ce qui donnera 1-300=-299
Les valeurs négatives pour des adresses cellules génère une erreur.
A+