IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

calcul d'une fréquence de sortie selon une matrice [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut calcul d'une fréquence de sortie selon une matrice
    Bonjour,

    j'ai une matrice et je calcule la fréquence de sortie d'un n° selon cette matrice.
    ci-dessous la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =FREQUENCE(SI(FREQUENCE(SI($B$2:$U$240=$X$1;LIGNE(1:239));LIGNE(1:239));SI($B$2:$U$241<>X$1;$B$2:$U$241));$W$2:$W$71)
    par exemple...et qui fonctionne bien.
    J'ai ajouté une colonne A, qui contient des dates au format "dimanche 25 septembre 2011"
    j'aimerai effectuer le même calcul selon le filtre suivant:
    - jour: lundi, mardi, etc.. (Weekday)
    - mois: janvier, février, etc....(Month)
    - année: 2010, 2011, etc......(Year)

    1) est-il possible de le faire?
    2) Comment l'appliquer en VBA?

    Merci d'avance de votre aide

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2011
    Messages : 32
    Points : 35
    Points
    35
    Par défaut
    Bonjour rch05,

    Pour être franc je ne suis pas sur d'avoir cerné ta demande mais pour essayer de t'aider voila ce que j'ai fait :

    dans Feuil1 en A1 j'ai : dimanche 25 septembre 2011 (25/09/11 au format date).
    Puis respectivement toutes les dates jusqu'en A16 : lundi 10 octobre 2011.

    J'ai filtrer les résultats par mois en prenant seulement octobre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Range("A1").EntireColumn.SpecialCells(xlCellTypeConstants).Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$1:$A$16").AutoFilter Field:=1, Operator:= _
    xlFilterValues, Criteria2:=Array(1, "10/10/2011")
    En espérant que ça puisse t'aider.

  3. #3
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Bonjour modenofx,

    Merci de ta réponse.
    Afin de mieux comprendre ma demande, ci-joint un fichier exemple.
    La colonne A: ce sont les dates
    La colonne X2:X71 est le calcul des fréquences de sorties.
    Lorsque j’effectue un filtre dans la colonne A, le calcul des fréquences ne s'effectue pas par rapport au filtre.
    Il faut à chaque fois que je change la plage de la matrice.

    Comment faire pour prendre en compte le filtre?
    J'espère que mon explication est un peu plus claire....

    Merci
    Fichiers attachés Fichiers attachés

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2011
    Messages : 32
    Points : 35
    Points
    35
    Par défaut
    Bonsoir rch05,

    Je suis en train de regarder ton fichier excel "Fréquence".

    Si je comprends bien, tu veux pouvoir filtrer les éléments de la colonne A par jours, mois et années et qu'une fois le filtre appliquer le résultat soit retranscrit dans chaqu'une des lignes de X?

  5. #5
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Bonjour modenofx,

    C'est exatement ça.

    Merci de ton aide

    Cdt

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2011
    Messages : 32
    Points : 35
    Points
    35
    Par défaut Un petit plus.
    Bonsoir rch05,

    J'ai travaillé sur ton fichier, voila ce que j'ai fais pour le moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    'On sélectionne toute la colonne A avec les dates :
    Range("A1").EntireColumn.SpecialCells(xlCellTypeConstants).Select
     
    'Avec cette selection on filtre les données pour le mois de janvier :
    Selection.AutoFilter Field:=1, Operator:= _
    xlFilterValues, Criteria2:=Array(1, "01/01/2011")
     
    'On sélectionne les données filtrées :
    Range("U2").EntireColumn.SpecialCells(xlCellTypeVisible).Select
    Je ne suis qu'un grand débutant en vba mais pour moi si tu refais ta formule au complet contenue en X en vba et que tu remplaces "B2:U240" par la derniere sélection de cellule à l'aide d'une variable ça devrait fonctionner.

    J'ai dans un de mes fichiers excel (pas sur l'ordinateur de ce soir) un module pour obtenir les coordonnées complètes d'une cellule, il est aussi présent sur ce forum. Je le chercherais prochainement pour continuer ce code.

  7. #7
    Membre habitué
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2009
    Messages : 313
    Points : 151
    Points
    151
    Par défaut
    Bonjour modenofx,

    OK, je vais voir avec ton code et tester avec une variable.
    Je te tiens au courant

    Bonne journée

    Cdt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/06/2010, 07h39
  2. Import de fichier txt selon une fréquence
    Par triaguae dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 22/06/2010, 20h40
  3. [XL-2007] Recevoir une alerte par mail selon une date de péremption
    Par Scatmax dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 04/03/2010, 16h58
  4. Réponses: 1
    Dernier message: 18/10/2007, 17h13
  5. Réponses: 4
    Dernier message: 23/08/2007, 17h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo