[Déplacé .NET -> VBA]Extraction données/sommes

cs_Neliana Messages postés 1 Date d'inscription lundi 4 juillet 2011 Statut Membre Dernière intervention 6 juillet 2011 - 6 juil. 2011 à 10:32
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 12 juil. 2011 à 13:52
Bonjour,

Je suis débutante en VBA, et j'avoue que je galère un peu de temps en temps :)
J'ai fureté un peu à droite à gauche, pour essayer de trouver des éléments de réponses à mon problème (et avant de créer un nouveau post, sachant que c'est agaçant de répondre toujours la même chose...), mais ça n'a rien résolu ^^

Alors voilà, à partir d'un export comptable (d'une année entière ou non), je dois récupérer certaines données, pouvoir les stocker (afin de pouvoir supprimer l'export et le remplacer par un autre, sans effacer les données que je veux), et bidouiller quelques formules (des sommes à priori).

Dans ma feuille "Export" j'ai la colonne C correspond aux dates, et les colonnes P, Q, R, S et T (respectivement "Immo", "Amort", "Charges", "Etat", et "Ventes")correspondent aux données que je veux récupérer (en fonction d'autres facteurs, mais ça c'est réglé :) ).

A ce stade là, il me faudrait récupérer les données des colonnes P, Q, R, S et T dans une autre feuille de "stockage" si je puis dire, le tout pour chaque mois (en gardant la mise en forme des colonnes P, Q, R, S et T).

J'ai déjà réussi (avec de l'aide je l'avoue) à faire des ruptures pour les mois :

Sub TotalMois()
'Calculer le total des comptes par mois

Dim mois As Integer
Dim immo As Currency
Dim amort As Currency
Dim charges As Currency
Dim etat As Currency
Dim ventes As Currency
mois = 1
immo = 0
amort = 0
charges = 0
etat = 0
ventes = 0

Dim I
I = 1

For Each Row In ActiveWorkbook.Worksheets("Export").UsedRange.Rows
If I <> 1 Then
If mois <> month(Row.Cells(2).Value) Then

MsgBox "Mois =" & mois & _
"Immo =" & immo & _
"Amort =" & amort & _
"Charges =" & charges & _
"Etat =" & etat & _
"Ventes =" & ventes

immo = 0
amort = 0
charges = 0
etat = 0
ventes = 0
mois = month(Row.Cells(2).Value)

End If

immo = immo + Row.Cells(15).Value
amort = amort + Row.Cells(16).Value
charges = charges + Row.Cells(17).Value
etat = etat + Row.Cells(18).Value
ventes = ventes + Row.Cells(19).Value
End If

I = I + 1
Next Row

MsgBox "Immo =" & immo & _
"Amort =" & amort & _
"Charges =" & charges & _
"Etat =" & etat & _
"Ventes =" & ventes

End Sub


Les MsgBox étant juste pour vérifier que ça marchait ^^
Mais maintenant, je ne sais plus trop comment faire pour "extraire" ou "exporter" ces données là dans l'autre feuille ; en sachant qu'il me faudrait juste le mois de l'année en cours (colonne C), ainsi que les sommes (par mois) des colonnes P, Q, R, S et T.



Si quelqu'un pouvait m'éclairer je lui en serait très reconnaissane ^^
En espérant avoir était clair (et ne m'être pas plantée sur l'emplacement du topic ).


Merci,


Neliana.

1 réponse

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
12 juil. 2011 à 13:52
Bonjour,

Je pense que si tu créé un autre onglet à ton fichier.
Ensuite, dedans, tu a une colonne Date(A) et tes colonnes de données (B, C, ...)

A chaque ligne, tu extrait mois/année, puis tu regardes si dans la colonne A tu as déjà la date :
- Déjà présente, tu somme les données
- Absente, tu ajoute une ligne à la fin de ton tableau (après la dernière donnée valide en somme).

J'espère avoir compris.

Sinon, je déplace aussi ton message dans la catégorie VBA, car ce n'est pas du .NET.

Mon site
0
Rejoignez-nous