Macro VBA problème bizzare
Bonjour,
j'ai fait une macro pour pouvoir calculer des sommes en fonction de variables mais je ne comprends pas il me marque un débogage (j'ai réutilisé une macro qui faisait des sommes en évitant de prendre en compte les doublons de classe) .
Je veux juste faire une somme si ma date et ma ref de ma feuil Data Global est égale à ma date et ma ref de ma feuil data prototype alors je fais une somme des valeurs de mes classes situé dans la colonne 6 de ma feuil data prototype et j'affiche le résultat dans ma colonne 10 de ma feuil data global
Voici mon code et la ligne en rouge est la ligne ou il y a un débogage
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| Sub test()
Dim i As Long
Dim j As Long
Dim wksCriteres As Worksheet
Dim rngDataDate As Range
Dim wksCopie As Worksheet
Dim c As Range
Set wksCriteres = Worksheets("Critères")
Set wksCopie = Worksheets("Copie")
' Trouver le titre de la colonne dans la page de données globales
Set rngDataDate = Worksheets("Data Global").UsedRange.Columns(1).Find(What:="Date")
If Not rngDataDate Is Nothing Then ' trouvé!
' on commence l'itération à la ligne suivante...
i = 1
While Not IsEmpty(rngDataDate.Offset(i, 0).Value)
' filtrer la table de prestation en fonction de la date et ref
wksCriteres.Range("A2").Value = rngDataDate.Offset(i, 0).Value ' 0 colonne 'Date'
wksCriteres.Range("B2").Value = rngDataDate.Offset(i, 1).Value ' 1 colonne à droite 'Ref'
Worksheets("Data prototype").UsedRange.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=wksCriteres.Range("A1:B2"), _
CopyToRange:=wksCopie.Range("A1"), _
Unique:=True
For j = 2 To wksCopie.UsedRange.Rows.Count
rngDataDate.Offset(i, 7).Value = rngDataDate.Offset(i, 7).Value + wksCopie.UsedRange.Cells(j, 6).Value
Next j
wksCopie.Cells.Delete
i = i + 1
Wend
End If
End Sub |
Merci du coup de main