bonsoir,
Mon probelme c'est de faire une macro en excel 2007 qui me calcule la somme des données que je les recupère d'un fichier excel pour chaque moi ,
les données sont accorder par semaine donc ce que je veux c sommer les donner pour chaque mois apres coller le resultat dans une autre feuil en utilisant une macro (faire un automatisation)
ce que j'ai pu faire pour l'instant c'importer les données dans mon fichier et une macro qui fait le tri
j'ai besoi d'une aide pour modifier la macro trier et calculer la somme des donnée pour chaque mois
Sub Bouton1_Clic()
Reponse = MsgBox("Voulez vous charger l'Export de classeur1 pour l'année " & Range("B" & Range("D100")) & "?", vbQuestion + vbYesNo)
If Reponse = vbYes Then
Fichier = Application.GetOpenFilename("Fichier Excel, *.csv; *.xlsm;*.xls;*.xla;*.xlsx")
'Range("A1:Z300000").Value = Null
If Fichier <> False Then
'ici je veux filtrer le fichier par exmple copier just les colonnes A B C et juste les lignes des semaine 1 2 3 4 de classeur1
Annee = Range("C100")
Sheets(Annee).Activate
Var_chemin = Fichier
Fichier1 = ActiveWorkbook.Name
Workbooks.Open Var_chemin, local:=True
Fichier2 = ActiveWorkbook.Name
Workbooks(Fichier2).Sheets(1).Range("A1:Z300000").Copy Workbooks(Fichier1).Sheets(Annee).Range("A1:Z300000")
Windows(Fichier2).Activate
'ActiveWindow.Close
ActiveWorkbook.Close savechanges:=False
Windows(Fichier1).Activate
Sheets("feuil1").Activate
'Range("A1:Z300000").Select
'ActiveSheet.Paste
Else
MsgBox "Vous n'avez exporté aucun fichier"
End If
End If
End Sub
Sub Bouton21_Clic()
'je veux modifier la fonction trier pour qu'elle puisse me calculer(la somme colonne B pour chaque mois /somme colonneF pour chaque mois
'aprés coller le resultat dans la feuil 4 pour chaque moi
Dim i&, fin&, aa As Variant, bb As Variant, a&
With Feuil3
fin = Feuil3.Range("A" & Rows.Count).End(xlUp).Row
y = 1
aa = Feuil3.Range("A2:D" & fin)
For i = 1 To UBound(aa)
aa(i, 4) = ""
Next i
For i = 1 To UBound(aa)
If aa(i, 1) >= 1 And aa(i, 1) <= 4 Then aa(i, 4) = "oui": y = y + 1
Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 3)
y = 1
For i = 1 To UBound(aa)
If aa(i, 4) = "oui" Then
For a = 1 To 3
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
End With
Feuil2.Cells.Clear
'je veux modifier la fonction trier pour qu'elle puisse me calculer(la somme colonne B pour chaque mois /somme colonneF pour chaque mois
'aprés coller le resultat dans la feuil 4 pour chaque moi
Feuil2.Range("A1").Resize(UBound(bb), UBound(bb, 2)) = bb
End Sub
Merci d'avnace