Discussion:
erreur incompatibilite de type
(trop ancien pour répondre)
domicol
2020-12-28 10:24:03 UTC
Permalink
Bonjour,

j ai un fichier excel avec des macros vba
j ai ajouter une case et sur celle si j ai l'erreur incompatibilité de type
quelqu un pour lancer sur une piste
merci
MichD
2020-12-28 12:41:33 UTC
Permalink
Post by domicol
Bonjour,
j ai un fichier excel avec des macros vba
j ai ajouter une case et sur celle si j ai l'erreur incompatibilité de type
quelqu un pour lancer sur une piste
merci
Bonjour,

Ta question n'est pas très précise...

| j ai ajouter une case

Il n'y a aucun objet dans Excel ayant ce nom "case".

Je te donne un exemple de code générant ce type d'erreur à l'exécution.

J'ai attribué à la variable X le type "Long". Dans la procédure,
j'essaie d'utiliser cette variable pour contenir du texte d'où l'erreur.

'-------------
Sub test()
Dim X As Long
X = "toto"
End Sub
'-------------

MichD
domicol
2020-12-29 09:54:55 UTC
Permalink
Post by domicol
Bonjour,
j ai un fichier excel avec des macros vba
j ai ajouter une case et sur celle si j ai l'erreur incompatibilité de type
quelqu un pour lancer sur une piste
merci
merci

dans cette page il y a plusieurs menus déroulant qui sont relier à des macro
pour filtrer les informations et en faire une synthèse .
j ai ajouter un menu déroulant qui va chercher les infos dans la même pag
quand je lance lance la macro pour filtrer il me marque une erreur
"incompatibilité de type"
j ai contrôle que la syntaxe du menu déroulant soit la même que dans le
feuilles ou sont stocké les données
bonne fin de journée
Domi
MichD
2020-12-29 11:07:16 UTC
Permalink
Post by domicol
Bonjour,
j ai un fichier excel avec des macros vba
j ai ajouter une case et sur celle si j ai l'erreur incompatibilité de type
quelqu un pour lancer sur une piste
merci
merci
dans cette page il y a plusieurs menus déroulant qui sont relier à des macros
pour filtrer les informations et en faire une synthèse .
j ai ajouter un menu déroulant qui va chercher les infos dans la même page
quand je lance lance la macro pour filtrer il me marque une erreur
"incompatibilité de type"
j ai contrôle que la syntaxe du menu déroulant soit la même que dans les
feuilles ou sont stocké les données
bonne fin de journée
Domi
Pourquoi ne pas publier ta macro qui plante?
De plus, dis-nous sur quelle ligne de code s'arrête l'exécution de la
macro lorsqu'elle se plante...

Ce n'est pas un jeu de devinette!

MIchD
domicol
2020-12-29 17:39:16 UTC
Permalink
Post by domicol
Bonjour,
j ai un fichier excel avec des macros vba
j ai ajouter une case et sur celle si j ai l'erreur incompatibilité de type
quelqu un pour lancer sur une piste
merci
j ai trouvé le point ou il plante s est au repère "MsgBox ("dans feuille 12g")
qui se trouve au milieu de la macro
cette macro et dans "microsoft Excel objets " " feuil12(récap)"





Sub point()
Dim Rg As Range, C As Range
Dim D As Object, Sh As Worksheet
' affiche Feuille module 13
Call UnhideSheet


'execution macro gestion des doublons module14
Call copievaleur 'module14

'Nom de l'onglet de la feuille où sont les données
Set Sh = Worksheets("récap")

With Sh
Set Rg = .Range("Y25:Y" & .Range("Y" & .Rows.Count).End(xlUp).Row)

End With
Set D = CreateObject("Scripting.Dictionary")
For Each C In Rg
MsgBox ("dans feuille 12g")

If C <> 0 And Not IsEmpty(C.Value) Then

If Not D.Exists(C.Value) Then

D.Add C.Value, C.Row

End If
End If
Next
MsgBox ("dans feuille 12k")

'Copie des données uniques sans less "0" ou les cellules vides.
Sh.Range("AA1").Resize(D.Count) = Application.Transpose(D.Keys)

'execution macro colle point dans feuille image module 9
Call copiepoint 'module9

'execution macro colle point avec le bonhomme module10

Call positionnementpointsurbonhomme 'module10


End Sub
MichD
2020-12-29 18:35:08 UTC
Permalink
Bonjour,

La macro fonctionne très bien. La voici, j'ai simplement désactivé
l'appel de macros extérieures.

Cette ligne de code : MsgBox ("dans feuille 12g")
ne sert absolument à rien. Quel est son rôle?

Je l'ai testé comme ceci et tout est OK. Aucune erreur!

'--------------------------------------
Sub point()
Dim Rg As Range, C As Range
Dim D As Object, Sh As Worksheet

' affiche Feuille module 13
'Call UnhideSheet

'execution macro gestion des doublons module14
'Call copievaleur 'module14

'Nom de l'onglet de la feuille où sont les données
Set Sh = Worksheets("récap")

With Sh
Set Rg = .Range("Y25:Y" & .Range("Y" & .Rows.Count).End(xlUp).Row)
End With

Set D = CreateObject("Scripting.Dictionary")

For Each C In Rg
MsgBox ("dans feuille 12g")
If C <> 0 And Not IsEmpty(C.Value) Then
If Not D.Exists(C.Value) Then
D.Add C.Value, C.Row
End If
End If
Next
MsgBox ("dans feuille 12k")

'Copie des données uniques sans less "0" ou les cellules vides.
Sh.Range("AA1").Resize(D.Count) = Application.Transpose(D.Keys)

'execution macro colle point dans feuille image module 9
'Call copiepoint 'module9

'execution macro colle point avec le bonhomme module10

'Call positionnementpointsurbonhomme 'module10

End Sub
'--------------------------------------

MichD

Loading...