Extraction date/Tri élaboré

Bonjour,

Mes connaissances d'Excel sont très limitées donc j'aurais besoin de vous pour résoudre un exercice dans le fichier en pj, pour mes études. J'en ai encore 3 autres, que je posterai au fur et à mesure... ma version d'Excel est 2003, en anglais.

Je ne sais pas quelles formules simples utiliser pour l'extraction et le calcul des données sans passer trop de temps à tout faire étape par étape...

Merci beaucoup par avance pour votre aide.

Cordialement,

26exercice-1.zip (89.30 Ko)

Bonjour,

Peux tu faire ta requete en francais?, je suis un peu limiter en anglais......

Amicalement

Merci de me répondre si vite

Alors voici les questions du document en français :

- Dans la colonne H, préparez la liste des années présentes dans la colonne E (en montrant une année seulement une fois). Calculez la moyenne annuelle correspondante dans la colonne I

- Dans la colonne K, préparez la liste des mois et années présentes dans la colonne E (en montrant une combinaison mois/année seulement une fois). Calculez la moyenne mensuelle correspondante dans la colonne L

- Dans la colonne N, préparez la liste des trimestres présents dans la colonne E (en montrant un trimestre seulement une fois). Calculez la moyenne trimestrielle correspondante dans la colonne O

Bonsoir à tous,

Voir noms définis "Dates" et "Line"

ton fichier en retour

à noter que la formule est la même dans les 3 colonnes "i", "L", "O"

Amicalement

Claude

bonjour

je n'ai pas fait la partie quarter

une liste pour les annees ; une liste pour les mois ;cela fonctionne

avec 10000000+/- lignes ; la matricielle peine un peu

21asmol.zip (113.68 Ko)

cordialement

Merci beaucoup à vous pour ces solutions !

Mais pour l'extraction "année" vous utilisez une formule particulière type Annee() ? idem pour mois/année et trimestre ?

-- 23 Avr 2011, 21:03 --

Euh je viens de vérifier mais les moyennes ne sont pas justes... ex pour la année 1973 on devrait être à 712...

re,

sur ma formule, remplace par :

en "i2", "L2', "O2"

=SOMMEPROD((Line)*(Dates>=H2)*(Dates<H3))/SOMMEPROD((Dates>=H2)*(Dates<H3))

Mais pour l'extraction "année" .....

en H2 => 01/01/1973

en H3 => 01/01/1974

et tu tire jusqu'à l'année la + grande

pareil pour mensuel

en K2 => 01/01/1973

en K3 => 01/02/1973

pareil pour trimestre

en N2 => 01/03/1973

en N3 => 01/06/1973

tu tire les 2 cellules en même temps

Je regarde pour automatiser tout çà

Claude

re

tu as raison ,c'est corrigé + j'ai fais les trimestres

il y aura mieux comme solution

20asmol.zip (113.68 Ko)

bonne soirée

re,

Comme c'est un exercice, tu n'auras sans doute pas besoin de cette version VBA,

je la poste quand même !

Sub Tableau()
Dim Lg%, NbA%, x%, y%, z%
    Lg = Range("e65536").End(xlUp).Row
    Application.ScreenUpdating = False
        NbA = Year(Cells(Lg, "e")) - Year(Cells(2, "e"))    'nombre d'années
        x = NbA + 2                                         'lignes années
        y = NbA * 12 + 12                                   'lignes mois
        z = NbA * 4 + 4                                     'lignes trimestres
    '--- années ---
    Cells(2, "h") = "=DATE(YEAR(e2),1,1)"
    Cells(3, "h") = "=DATE(YEAR(e2)+1,1,1)"
    '--- mois ---
    Cells(2, "k") = "=DATE(YEAR(e2),1,1)"
    Cells(3, "k") = "=DATE(YEAR(e2),2,1)"
    '--- trimestre ---
    Cells(2, "n") = "=DATE(YEAR(e2),3,1)"
    Cells(3, "n") = "=DATE(YEAR(e2),6,1)"

    Range("h2:n3") = Range("h2:n3").Value 'en dur
    '--- incrémente ---
    Range("h2:h3").AutoFill Destination:=Range("h2:h" & x + 1)
    Range("k2:k3").AutoFill Destination:=Range("k2:k" & y + 1)
    Range("n2:n3").AutoFill Destination:=Range("n2:n" & z + 1)
    '--- formules ---
    Range("i2:i" & x) = "=SUMPRODUCT((Line)*(Dates>=h2)*(Dates<h3))/SUMPRODUCT((Dates>=h2)*(Dates<h3))"
    Range("i2:i" & x) = Range("i2:i" & x).Value 'en dur

    Range("L2:L" & y) = "=SUMPRODUCT((Line)*(Dates>=k2)*(Dates<k3))/SUMPRODUCT((Dates>=k2)*(Dates<k3))"
    Range("L2:L" & y) = Range("L2:L" & y).Value 'en dur

    Range("o2:o" & z) = "=SUMPRODUCT((Line)*(Dates>=n2)*(Dates<n3))/SUMPRODUCT((Dates>=n2)*(Dates<n3))"
    Range("o2:o" & z) = Range("o2:o" & z).Value 'en dur
End Sub

Amicalement

Claude

Merci beaucoup pour votre aide. Je vais potasser tout ça.

Super le VB, je vais sûrement devoir m'en servir bientôt donc autant commencer maintenant !

Je vais mettre mes autres fichiers sur le forum...

Bonsoir,

Rechercher des sujets similaires à "extraction date tri elabore"