Posez votre question Signaler

Erreur d'exécution 13 Incompatibilité de type [Résolu]

grace - Dernière réponse le 18 août 2011 à 16:28
Bonjour,
Je ne comprend pas pourquoi j'ai une erreur d'execution 13 : incompatibilité de type car mon code marchait très bien avant...Je met en gras la ligne où il y a l'erreur
'affichage des feuilles concernées et vérification des champs
Sheets("Recap").Visible = True
If Cathégories = "" Then
MsgBox "Sélectionnez une catégorie de défauts dans la liste déroulante"
ElseIf défauts = "" Then
MsgBox "Sélectionnez un défauts qualité dans la liste déroulante"
Exit Sub
End If

Dim i As Integer
Dim n As Integer
n = 3
i = 2

MsgBox "Veuillez patienter pendant le traitement..."
Application.Cursor = xlWait   'affiche le sablier

'Suppression des données du récap
Worksheets("Recap").Range("A3:Z1500").ClearContents

'recherche les lignes ou il y a le défaut et la/les machine/s choisie
'copie les lignes et les colle dans la récap
If défauts <> "" Then
n = 3
i = 2
Do While Cells(i, 1) <> ""

If Cells(i, 3) = défauts Then
j = 1
Do While Sheets("Machines").Cells(j, 1) <> ""
If Cells(i, 1) = Sheets("Machines").Cells(j, 1) Then
Worksheets("2011 (2)").Select
Worksheets("2011 (2)").Rows(i).Select
Worksheets("2011 (2)").Rows(i).Copy
Worksheets("Recap").Select
Worksheets("Recap").Rows(n).Select
ActiveSheet.Paste
n = n + 1
Worksheets("2011 (2)").Select
End If
j = j + 1
Loop

End If
i = i + 1
Loop

Sheets("Machines").Visible = False

'Trier les données par machine
Worksheets("Recap").Select
Range("A2:Z1500").Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range("A3"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

End If
Application.Cursor = xlDefault 'remet le curseur par défaut
Else
Exit Sub
End If
End Sub

Ce qui est bizarre c'est qu'il fait le code correctement puisque toutes lignes concernées sont copiées et collées dans la récap! Il doit y avoir un bug sur la fin de la boucle...(je pense!)
Merci d'avance si vous pouvez m'aider...mon PC va finir par la fenetre!!!!
Lire la suite 

Erreur d'exécution 13 Incompatibilité de type »

3 réponses
Réponse
+0
moins plus
up!
Quelqu'un peut-il m'aider?
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
En général, erreur d'execution 13 : incompatibilité de type est du à une mauvaise déclaration de variable ou à une mauvaise utilisation de cette variable.
Exemple :
Dim MaVar As String
MaVar = "Texte"
MsgBox CDbl(MaVar)
va renvoyer l'erreur d'execution 13 sus-mentionnée.

Le code que vous nous communiquez plus haut est incomplet.
- Pourriez vous nous le donner dans sa globalité, de Sub Machin() à End Sub.
- Ou est il placé? Module standard, Module de feuille...
- Avez vous activé Option Explicit (obligation de déclaration des variables)?
grace - 18 août 2011 à 16:28
Bonjour,

Merci pour votre commentaire...
En réalité, j'ai fini par trouver moi même. Il s'avère que mes cellules avait un format standard alors que dans mon programme je les assimilais à du texte. J'ai donc tout passé en format de cellule texte....et plus d'erreur!

Merci quand même de m'avoir apporter une réponse
Grace
Ajouter un commentaire
Ce document intitulé « Erreur d'exécution 13 Incompatibilité de type » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?