Erreur d'exécution 13 : Incompatibilité de type
Leero
-
Leero -
Leero -
Bonjour à vous,
J'ai un petit soucis avec mes macros Excel. Pour faire simple, elles comparent deux feuilles et en extraient les différences (les nouvelles demandes) via une comparaison que je fais toutes les deux semaines. Elles sont fonctionnelles bien qu'assez basiques mais lorsqu'il n'y a pas de nouvelles demandes, ma macro affiche le message d'erreur "Erreur d'exécution 13 : Incompatibilité de type ".
J'ai fait quelques recherches mais n'étant qu'un novice sous Excel, les réponses que j'ai trouvé me proposaient majoritairement un problème au niveau des variables.
Je vous joins ci-dessous le code de ma macro avec en gras, la ligne qui est surlignée sous Excel :
Je remercie d'avance les gens qui m'accorderont de leur temps !
J'ai un petit soucis avec mes macros Excel. Pour faire simple, elles comparent deux feuilles et en extraient les différences (les nouvelles demandes) via une comparaison que je fais toutes les deux semaines. Elles sont fonctionnelles bien qu'assez basiques mais lorsqu'il n'y a pas de nouvelles demandes, ma macro affiche le message d'erreur "Erreur d'exécution 13 : Incompatibilité de type ".
J'ai fait quelques recherches mais n'étant qu'un novice sous Excel, les réponses que j'ai trouvé me proposaient majoritairement un problème au niveau des variables.
Je vous joins ci-dessous le code de ma macro avec en gras, la ligne qui est surlignée sous Excel :
Sub STNouvellesDemandes() Dim Tabl1(), Tabl2() Dim MonDico1 As Object, Mondico2 As Object Dim c Dim Sh1 As Worksheet, Sh2 As Worksheet, Sh3 As Worksheet Dim DrLig As Long Set Sh1 = Sheets("28.04.14") With Sh1 DrLig = .Range("U" & Rows.Count).End(xlUp).Row Tabl1 = .Range("U6:U" & DrLig) End With Set MonDico1 = CreateObject("Scripting.Dictionary") For Each c In Tabl1 MonDico1(c) = "" Next c Set Sh2 = Sheets("13.05.14") With Sh2 DrLig = .Range("U" & Rows.Count).End(xlUp).Row Tabl2 = .Range("U6:U" & DrLig) End With Set Mondico2 = CreateObject("Scripting.Dictionary") For Each c In Tabl2 If Not MonDico1.exists(c) Then Mondico2(c) = "" Next c Set Sh3 = Sheets("Résultat Storeline") With Sh3 DrLig = .Range("B" & Rows.Count).End(xlUp).Row .Range("A10:A" & DrLig).Clear .Range("A10").Resize(Mondico2.Count, 1) = Application.Transpose(Mondico2.keys) End With End Sub]
Je remercie d'avance les gens qui m'accorderont de leur temps !
A voir également:
- Erreur d'exécution 13 : Incompatibilité de type
- Fifa 13 - Télécharger - Jeux vidéo
- Test redmi note 13 5g - Accueil - Téléphones
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
2 réponses
Bonjour,
si j'ai compris votre probleme, sans ligne en gras:
testez le compteur de Mondico2
si j'ai compris votre probleme, sans ligne en gras:
testez le compteur de Mondico2
If Mondico2.Count > 0 Then
Set Sh3 = Sheets("Résultat Storeline")
With Sh3
DrLig = .Range("B" & Rows.Count).End(xlUp).Row
.Range("A10:A" & DrLig).Clear
.Range("A10").Resize(Mondico2.Count, 1) = Application.Transpose(Mondico2.keys)
End With
Else
MsgBox ("Pas de nouvelles donnees!!!!")
End If