Incompatibilité de type Erreur 13 VBA

Incompatibilité de type Erreur 13 VBA - VB/VBA/VBS - Programmation

Marsh Posté le 12-11-2010 à 14:27:57    

Bonjour,
 
j'ai un problème avec une macro VBA qui me renvoie une erreur 13 "Incompatiobilité de typé".
Le code est le suivant:
 
Dim c As Integer, L As Integer, pge As String
 
With Sheets("Saisie_données_contrat" )
 
    For L = 2 To 149 Step 3
 
        For c = 5 To 9
            With Workbooks("extrac données.xls" )
            pge = "simpa " & Workbooks("Calculs_des_derives.xls" ).Sheets("Saisie_données_contrat" ).Cells(L, c)
            End With
 
            .Cells(L + 2, c) = WorksheetFunction.SumIf(Workbooks("extrac données.xls" ).Sheets(pge).Range("I2:Q60000" ), "" * "" & .Cells(L, 3), Workbooks("extrac données.xls" ).Sheets(pge).Range("Q2:Q60000" ))
        Next c
 
    Next L
 
End With
 
End Sub
 
C'est al ligne en rouge qui bugge et pourtant mes variables sont bien déclarer.
Quelqu'un a t-il une idée?
 
D'avance merci

Reply

Marsh Posté le 12-11-2010 à 14:27:57   

Reply

Marsh Posté le 12-11-2010 à 16:15:01    

Une incompatibilité de type, c'est lorsque que l'on donne un nombre alors qu'il attend une chaine de caractères, ou d'autres problème de types de données non prévues.
 
Peut-être que Sheets(pge) ne va pas (parce que si le nom de la page est dans une cellule, alors il faudrait lui mettre des guillemets ou utiliser Indirect). Essayer de mettre le nom en dur pour un test : Sheets("Toto..." ).
Peut-être que cela vient d'ailleurs.
 
Une astuce pour mettre une longue ligne sur plusieurs lignes est d'utiliser le tiret de soulignement au bout d'une ligne pour indiquer que cela se prolonge sur la ligne suivante.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed