Menu

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

- - Dernière réponse : pijaku
Messages postés
12245
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
- 25 févr. 2015 à 14:48
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!!!!
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
12245
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
2056
2
Merci
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)?

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 42175 internautes nous ont dit merci ce mois-ci

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
achacheachache
Messages postés
14
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
25 février 2015
-
bonjour j'ai la meme erreur pour ce programme, ca fait 3 jours que j'essaie de le débeuger et j'arrive toujours pas .
pouvez vous m'aider svp


Public Sub Essai()
    Dim i As Integer, DerniereLigne As Integer
    With Worksheets("Situation 092014 à 012015") 
        DerniereLigne = .Range("A65536").End(xlUp).Row

        For i = DerniereLigne To 1 Step -1
            If .Cells(i, 2) = "" And _
                .Cells(i, 3) = "" And _
                .Cells(i, 4) = "" And _
                .Cells(i, 5) = "" And _
                .Cells(i, 6) = "" And _
                .Cells(i, 1) <> "Absence" And _
    .Cells(i, 1) <> "activité syndicale hors poste de travail" And _
                .Cells(i, 1) <> "Délégation" And _
                .Cells(i, 1) <> "Delegation HC" And _
                .Cells(i, 1) <> "autres absences " And _
                .Cells(i, 1) <> "autres activités" And _
                .Cells(i, 1) <> "Présence activité syndicale" And _
                .Cells(i, 1) <> "" And _
                .Cells(i, 1) <> "sous total" Then
                    .Rows(i).Delete
            End If
'si une ligne du classeurs n'a aucune valeurs dans ces colonnes elle sera supprimer ..
'Absence, présence activité syndicale,autres activités, autres absences, les sous totaux,et les totaux ne serons pas supprimés
        Next i
    End With
End Sub
pijaku
Messages postés
12245
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
2056 > achacheachache
Messages postés
14
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
25 février 2015
-
Bonjour,

Ce message est en doublon.
Je vais donc te répondre sur la discussion originale.
La suite ici : http://www.commentcamarche.net/forum/affich-31586037-help-erreur-13-incompatibilite-type
0
Merci
up!
Quelqu'un peut-il m'aider?