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 t32 ✓ - Forum Livebox
- Iptv erreur de lecture - Forum TV & Vidéo
- Erreur 0x80070643 - Accueil - Windows
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