Problème Erreur d'exécution '13 : Incompatibilité de type

ALM

XLDnaute Nouveau
bonjour a ceux qui voudront bien m'aider.

Voila j'ai un niveau moyen - en VBA, et j'essaye de coder une macro, mais j'ai cette erreur Incompatibilité de type qui me fait ... j'sais bien quoi, et que je n'arrive pas à résoudre.

Je vous joint ma macro :

Sub report()

Dim Rang, RangA As Long
Dim Cellule, CelluleA As Range
Dim DébitB, DébitA, CréditB, CréditA As Double

For Each Cellule In Sheets("ECR").Range("e13:e999")
Rang = Cellule.Row
DébitB = Sheets("ecr").Range("h" & Rang)
CréditB = Sheets("ecr").Range("I" & Rang)
If Not IsNull(DébitB) Or (CréditB) Then
For Each CelluleA In Workbooks("00- Sommaire Général").Sheets("BAL").Range("b14:b1000")
If Not IsEmpty(CelluleA) Then
RangA = CelluleA.Row
DébitA = Workbooks("00- Sommaire Général").Sheets("BAL").Range("I" & RangA) + DébitB
Workbooks("00- Sommaire Général").Sheets("BAL").Range("I" & RangA) = DébitA
CréditA = Workbooks("00- Sommaire Général").Sheets("BAL").Range("j" & RangA) + CréditB
Workbooks("00- Sommaire Général").Sheets("BAL").Range("j" & RangA) = CréditA
End If
Next CelluleA
End If
Next Cellule
End Sub


Le but de cette macro est de reporter les valeurs d'une feuille "ECR", dans la feuille "BAL" du workbook "00- Sommaire général".

Je travaille sur excel 2010.

Voila, merci a ceux qui essayeront de m'aider.
 

camarchepas

XLDnaute Barbatruc
Re : Problème Erreur d'exécution '13 : Incompatibilité de type

Bonjour ALM,

Bon une première piste car sans un jeu de données de test difficile de valider , donc

lors de la déclaration des variables il faut écrire :

Dim Rang As Long, RangA As Long

et non pas

Dim Rang , RangA As Long

car le type de Rang est alors variant et pas long

Bien sur la meme chose pour toutes les déclarations a remettre en ordre
 

Discussions similaires

Statistiques des forums

Discussions
312 176
Messages
2 085 967
Membres
103 069
dernier inscrit
jujulop