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

Excel Discussion :

Copier/Coller valeurs sous plusieurs conditions+sommes [XL-2013]


Sujet :

Excel

  1. #1
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut Copier/Coller valeurs sous plusieurs conditions+sommes
    Bonjour le Forum,

    Je me tortille les méninges depuis de nombreux jours, sans succès.
    J'ai un fichier excel avec une feuille "PROFILS" et une autre feuille "PLAN".

    Dans la feuille "PROFILS" j'ai une colonne A : nom-prénom, colonne B : catégorie du personnel (ouvrier ou cadre), colonne C : Formation, colonne D : date de la formation, colonne E : Coût de la formation (cette feuille sert de planification)
    Dans la feuille "PLAN" j'ai une colonne A : Formation, colonne B : Nombre d'ouvrier, colonne C : Coût ouvrier, colonne D : Nombre de cadre, colonne E : Coût cadre (cette feuille doit servir à suivre le coût de chaque formation)

    Dans la feuille "PLAN" j'ai un bouton qui actualise la date et l'heure quand on clique dessus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Actualiser 
    [J4] = Now
    end sub
    J'aimerais que lorsque l'on clique sur ce bouton, en fonction de la date qui s'actualise (aujourd'hui par exemple, soit le : 22/04/2016), que par exemple toutes les personnes qui on suivi (avant le 22/04/2016) une formation "informatique" (cherche les données dans "PROFILS") se calculent et se transfert dans "PLAN". (en rouge mes 2 conditions)

    Exemple :

    Feuille "PROFILS" 10 personnes (5 ouvrier, 5 cadre) ont suivi une formation "informatique" le 11/04/2016. (il y a donc 10 lignes de créer)

    Dans "PLAN" cela doit donner : colonne A : Informatique, colonne B 5, colonne C 1000, colonne D : 5, colonne E : 2000. ( sur 1 ligne)

    J'espère être compréhensible ....

    Merci pour votre aide

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Inutile de faire une macro pour ça.
    Il suffit d'utiliser des fonction NB.SI.ENS et SOMME.SI.ENS dans les colonnes B à E de ta feuille PLAN.
    https://support.office.com/fr-FR/art...C-AA8C2A866842
    https://support.office.com/fr-FR/art...6-611CEBCE642B
    Contrairement à une macro, ça se mettra à jour automatiquement.

    Quant à la macro qui met la date du jour, ça me semble un peu disproportionné pour le résultat souhaité.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    Désolé pour la réponse tardive, je n'ai pu tester la formule que aujourd'hui.
    Et malheureusement je n'y arrive pas, dans la cellule ça m'écrit #VALEUR!

    Est-ce à cause de mon critère "date" ? (date d'actualisation qui permet d'effectuer les calcules par rapport aux dates antérieures)

    Merci

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Sans savoir quelle formule tu as écrite et quelles sont tes données sources, je ne vois pas trop comment il serait possible de te répondre.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    J'ai finalement réussi à appliquer cette formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI.ENS(Tableau2[Formation];Tableau1[FORMATIONS];Tableau2[Catégorie (ouvrier ou cadre)];Tableau1[[#En-têtes];[CAD]];PROFILS!G3:G5;"<"&PLAN!G4)
    MAIS !

    J'ai crée un nouveau classeur reprenant les mêmes onglets "PROFILS" et "PLAN", et la formule fonctionne parfaitement dans ce nouveau classeur.

    Dans l'ancien, j'ai toujours : #VALEUR!

    Je ne comprend pas pourquoi, je cherche depuis des heures .... et je dois absolument garder le 1er classeur (sinon ça aurait été trop simple....)

    Merci

  6. #6
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Quelqu'un sait-il pourquoi dans un classeur la formule fonctionne et pas dans l'autre ?

    Merci

  7. #7
    Membre expérimenté
    Homme Profil pro
    Ingénieur
    Inscrit en
    Août 2010
    Messages
    667
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2010
    Messages : 667
    Points : 1 419
    Points
    1 419
    Par défaut
    Bonjour,

    Difficile de répondre sans voir les données...

    Pour déboguer ta formule, tu peux la vérifier pas à pas à l'aide du menu Formules -> Evaluation de formules. Tu verras à quel moment le #Valeur apparaît, ce qui te permettra de corriger le souci plus facilement.

    Sinon, es-tu bien sûre que tes calculs sont rafraîchis automatiquement? (menu Formules -> Options de calcul -> Automatique)

  8. #8
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Les raisons peuvent être multiples : nature des données sources (par exemple des valeurs qui seraient en fait des textes), désignation des noms, désignation des onglets, des noms avec une plage de plusieurs cellules utilisé pour une valeur de critère, entre autres.

    Il y a trois conditions dans ta formule. Commence par faire 3 formules avec chacune une seule condition, ça te permettra de diminuer le périmètre du problème.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  9. #9
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Mon fichier est en bien en mode de calcul automatique pour les formules.

    J'ai évaluer ma formule, il semblerait que le problème vient de ma dernière condition "date".

    Dans ma feuille "PROFILS", mes données (dont les dates) sont insérées dans les cellules avec un UserForm.
    Les cellules concernées par les dates sont bien au format date, pareil que dans le nouveau classeur dans lequel j'ai testé la formule qui fonctionne (mais pas alimenté avec UF). Je ne sais pas si le problème vient de là !

    Je ne peux malheureusement pas joindre mon fichier car il est rempli de données confidentielles.

  10. #10
    Expert confirmé Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Points : 4 299
    Points
    4 299
    Par défaut
    salut,

    en regardant ta formule, il y a deuxchoses qui me troublent
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI.ENS(Tableau2[Formation];Tableau1[FORMATIONS];Tableau2[Catégorie (ouvrier ou cadre)];Tableau1[[#En-têtes];[CAD]];PROFILS!G3:G5;"<"&PLAN!G4)
    Elles sont en rouge dans le code.
    Tableau1[[#En-têtes];[CAD]], ici, tu indiques que c'est la ligne de titre qui est utilisée.

    PROFILS!G3:G5;"<"&PLAN!G4, là, tu as une plage de cellules

    Vérifie peut être ces deux points. Et dit nous quoi ...
    Jérôme

    " Je pense donc je suis. Tu es donc j'apprends ". (GCM)

    Si ce message vous à aidé, merci de cliquer sur . Si ce message est résolu, cliquez sur .

  11. #11
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Bonjour jerome.vaussenat

    Tu m'as mise sur la bonne voie ! Pour mes cellules dates, j'ai dû en effet insérer un tableau afin de ne plus prendre une plage de cellule. Génial merci !

    En revanche, dans le calcul, sur 3 OUV formés en INFORMATIQUE avant la date d'aujourd'hui, le résultat est de 2 au lieu de 3....

    Une petite astuce ?

    Merci beaucoup

  12. #12
    Expert confirmé Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Points : 4 299
    Points
    4 299
    Par défaut
    Salut,

    J'étais au boulot, si si, çà m'arrive de temps en temps

    Est ce que par hasard, dans ton tableau une formation serai à la date du jour ?
    Si c'est le cas, sur le critère de la date, (le dernier sauf erreur de ma part) essaie un "<="&PLAN!G4

    Sinon, sans voir le tableau, c'est difficile à dire ...

    En espérant que cela puisse de nouveau t'aider.
    Jérôme

    " Je pense donc je suis. Tu es donc j'apprends ". (GCM)

    Si ce message vous à aidé, merci de cliquer sur . Si ce message est résolu, cliquez sur .

  13. #13
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    "<="&
    Avec le signe "=" cela ne change rien.
    Depuis aujourd'hui, je me retrouve avec "0" comme résultat

    J'ignore pourquoi .....

  14. #14
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Je viens de trouver le problème mais je ne sais pas comment le résoudre :

    Mes dates dans la feuille Profils sont insérées grâce à un UserForm, bouton "Ajout". Bref

    Dans ma feuille PLAN la formule ne se calcul donc pas.

    Sauf si ! :

    Un simple double clique dans les cellules où sont insérées mes dates dans la feuille Profils, et là la formule dans PLAN se calcul !!

    Savez-vous pourquoi je dois faire cette manip ? Et est-il possible de résoudre cela ?

    Merci

  15. #15
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Sans doute parce que tes "dates" sont en fait des textes.
    Le fait de les re-valider les transforme en "vraies" dates, ce qui permet à la formule d'effectuer un calcul dessus.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  16. #16
    Membre du Club
    Femme Profil pro
    Assistante
    Inscrit en
    Février 2016
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Assistante

    Informations forums :
    Inscription : Février 2016
    Messages : 156
    Points : 51
    Points
    51
    Par défaut
    Menhir,

    Tu m'as toi aussi menée sur la bonne voie !!!

    J'ai donc ajouté, dans mon code, "Cdate" devant le nom de mes textbox contenant les dates à saisir, et cela fonctionne !

    Super merci !

    Mes problèmes de ce côté sont désormais résolus !

    Merci à tous de votre attention.

    A bientôt

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 18/02/2015, 16h48
  2. VBA Excel 2003 Copier ligne sous plusieurs conditions
    Par Harreauv dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/01/2013, 18h40
  3. copier/coller lignes sous condition colonne vers autre feuille
    Par juniorglobal08 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/05/2009, 17h29
  4. Somme sous plusieurs conditions
    Par neeux dans le forum Excel
    Réponses: 5
    Dernier message: 04/07/2007, 14h53
  5. [SQL] copier la valeur de plusieurs champs
    Par Ben_Le_Cool dans le forum Bases de données
    Réponses: 2
    Dernier message: 30/04/2006, 18h10

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