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 :

Insérer date d'une cellule dans une formule [Toutes versions]


Sujet :

Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut Insérer date d'une cellule dans une formule
    Bonjour à tous !

    Malgré de multiples recherches, je ne trouve rien qui fonctionne, peut-être que vous pourrez m'aider

    J'ai une feuille "tableau" et une seconde feuille "data" avec l'export CSV de commandes...

    Dans la feuille "tableau"
    J'ai les dates en colonne A :
    22/09
    23/09
    24/09
    25/09
    26/09
    Etc...

    Et en colonne B, j'ai une formule assez complexe contenant elle même une formule du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SUMIFS(orders_export!C:C;orders_export!A:A;"=2018-09-22*";orders_export!B:B;"CB")
    Dans la feuille "data"
    La date est sous la forme "2018-09-22 07:49:43 +0200"

    Mon but est de récupérer la date dans la colonne A de la feuille "tableau", j'ai bien sûr changé le format de la date pour qu'il corresponde, tenté une insertion avec INDIRECT(A1) mais il y a quelque chose que je dois mal faire...

    Merci d'avance !

  2. #2
    Expert éminent 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
    Par défaut
    Citation Envoyé par vatsyayana Voir le message
    Dans la feuille "tableau"
    J'ai les dates en colonne A :
    22/09
    Est-ce une VRAIE date (au sens Excel du terme) ou du texte ressemblant à une date ?

    Dans la feuille "data"
    La date est sous la forme "2018-09-22 07:49:43 +0200"

    Mon but est de récupérer la date dans la colonne A de la feuille "tableau", j'ai bien sûr changé le format de la date pour qu'il corresponde, tenté une insertion avec INDIRECT(A1) mais il y a quelque chose que je dois mal faire...
    J'ai du mal à comprendre ton problème.
    Est-ce que ton problème est que tu récupères la date sous forme "2018-09-22 07:49:43 +0200" et que tu voudrais qu'elle soit sous la forme "22/09" ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Merci pour ta réponse Menhir !

    Oui, la date est une vraie date, que j'ai entrée à la main, avec un format date personnalisé et j'incrémente.

    J'aurais dû mettre la colonne A au format "2018-09-22" car ça induit en erreur.
    Je voudrais juste que le contenu exact de la cellule s'insert dans la formule, mais en y ajoutant une * vu que dans mon export, la date est suivie de l'heure.

    La formule telle que je l'ai indiquée fonctionne, mais j'écris la date à la main dans chaque formule car je n'arrive pas à l'insérer à partir de la colonne A et j'ai des centaines de lignes !


    Pour préciser ma question, je me demande par quoi je peux remplacer "=2018-09-22*" pour que la date soit récupérée dans la colonne A.
    J'ai testé =INDIRECT("A7*"), =INDIRECT(A7*), =INDIRECT(A7)*, etc. rien ne fonctionne.

    Merci !

  4. #4
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 93
    Par défaut
    Bonjour
    Si tu peux nous fournir un exemple de feuille Excel, ce serait mieux. En attendant, dans ton champs de comparaison, essai de mettre soit juste la référence de la cellule (sans le signe "="), soit tu mets "="&C1 (par exemple et en mettant les guillemets autour du signe =)

    Nekko

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Je vais essayer d'être plus claire...

    Feuille "tableau"
    COLONNE A
    2018-09-22
    2018-09-23
    2018-09-24

    COLONNE B
    =SUMIF(data!E:E;"=2018-09-22*";data!L:L)
    =SUMIF(data!E:E;"=2018-09-23*";data!L:L)
    =SUMIF(data!E:E;"=2018-09-24*";data!L:L)


    Feuille "data"
    COLONNE E
    2018-09-22 07:49:43 +0200
    2018-09-23 11:37:18 +0200
    2018-09-24 01:04:57 +0200


    Cette solution fonctionne très bien, sauf que je dois obligatoirement taper les dates à la main dans les formules (en vert), soit plusieurs milliers de dates à écrire à la main !

    Je voudrais juste pouvoir remplir la partie en vert de la formule automatiquement, avec la date récupérée dans la colonne A, qui est ma colonne de date du jour, incrémentée et au format date personnalisé.

  6. #6
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 93
    Par défaut
    Bonjour
    Pourrais tu fournir un extrait de ton fichier Excel (en anonymisant les données), sous forme de fichier Excel, par une recopie ici des valeurs ?
    Le format de tes cellules ainsi que le texte exact peuvent influencer je ne suis pas sur de reproduire exactement ton problème avec un copier / coller de tes informations

    Cdlt

    nekko

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Excel.xlsx

    La formule est présente dans les colonnes D, G et I
    Merci beaucoup pour ton aide !

  8. #8
    Expert éminent 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
    Par défaut
    Citation Envoyé par vatsyayana Voir le message
    Je vais essayer d'être plus claire...

    Feuille "tableau"
    COLONNE A
    2018-09-22
    2018-09-23
    2018-09-24

    COLONNE B
    =SUMIF(data!E:E;"=2018-09-22*";data!L:L)
    =SUMIF(data!E:E;"=2018-09-23*";data!L:L)
    =SUMIF(data!E:E;"=2018-09-24*";data!L:L)
    J'avoue que je n'avais toujours pas compris ton problème après ton post #3.
    Avec cet exemple, j'ai l'impression de mieux comprendre (tu me corriges si je me trompe) : tu importes une date contenant aussi des heures et tu voudrais pouvoir l'exploiter dans une formule (SUMIF en l'occurrence) en indiquant comme critère juste une date sans heures.
    C'est ça ?

    Si c'est le cas, il faudra changer ton SUMIF en SUMIFS.
    Pour l'utilisation cette fonction (ou de NB.SI) avec des dates, perso je mets toujours deux conditions pour "borner" la date.
    Il ne faut pas mettre un critères d'égalité mais deux critères d'inégalité : ">= début de journée" et "< début de journée suivante".

    En supposant qu'en colonne A se trouve ton critère sans heure, la formule donne pour la ligne 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SUMIFS(data!L:L;data!E:E;">="&A1;data!E:E;"<"&(A1+1))
    Dernier détail : je pense que tu devrais lire l'aide de la fonction INDIRECT() parce que je pense que tu fais erreur sur son usage.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Merci Menhir mais ça m'affiche 0.
    Cela m'étonne que tu n'utilises pas d'* pour ne prendre en compte que la date et ignorer l'heure dans mes données exportées.

    Tu as mon fichier dans mon message précédent le tien, je pense que ce sera plus simple.

    PS et pour la fonction INDERECT, fort possible que je n'ai pas compris son usage, je suis débutante et l'est trouvé en faisant des recherches pour l'insertion d'une date contenue dans une autre cellule, mais ça n'a rien donné en effet

  10. #10
    Expert éminent 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
    Par défaut
    Citation Envoyé par vatsyayana Voir le message
    Cela m'étonne que tu n'utilises pas d'* pour ne prendre en compte que la date et ignorer l'heure dans mes données exportées.
    Les * ne sont utilisables que pour les textes.
    Une date n'est pas du texte. A moins, comme je l'ai demandé dans mon premier message, que ce ne soit pas une VRAI date.
    Une date dans Excel, ce n'est pas une année, un mois, un jour, une heure, etc., c'est un nombre de jours. Si ce nombre a des décimales, alors il contient aussi des heure. Le reste est juste une question de format, c'est-à-dire d'affichage. Mais quel que soit cet affichage, ça ne change pas la teneur de la données enregistrée dans la cellule.

    Donc, si le formule que j'ai donnée ne fonctionne pas, je renouvelle mon conseille : vérifie que tes données sources (aussi bien dans "tableau" que dans "data") sont de VRAIES dates.

    Tu as mon fichier dans mon message précédent le tien, je pense que ce sera plus simple.
    Je n'ouvre jamais les fichiers joints, entre autre pour les raisons expliquées ici : https://www.developpez.net/forums/d8...s-discussions/

    PS et pour la fonction INDERECT, fort possible que je n'ai pas compris son usage, je suis débutante et l'est trouvé en faisant des recherches pour l'insertion d'une date contenue dans une autre cellule, mais ça n'a rien donné en effet
    INDIRECT est une fonction qui renvoie la valeur de la cellule correspondant à l'adresse donnée.
    Par exemple, si A1 contient le texte "A2", INDIRECT(A1) renverra le contenu de A2.

  11. #11
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 93
    Par défaut
    oups
    Désolé Menhir d'avoir demandé de joindre un fichier. C'était pour confirmer cette histoire de formatage de donnée que je ne peux pas reproduire sur mon PC.

    @vatsyayana
    si tu tapes : 25/09/2018 en A1 et =gauche(A1;3) dans la case B1, tu verras que le résultat en B1 est 433 et non pas "25/". Tu vas en A1 et tu choisis "standard" comme format de cellule, tu verras que ta cellule A1 contient en fait 43368.

    Excel stocke les dates et les heures comme un chiffre. Il applique juste des calculs pour le formatage par la suite. De fait ton "*" n'a pas de sens pour lui. Tu ne peux pas appliquer les opérateurs de texte dans ton cas

    Il faut passer des opérateurs type "date" ou "dateval" ou autre pour réussir ta conversion. J'avais pas trop le temps hier soir pour faire des essais mais je regarderai un peu ce soir si tu n'as pas trouvé entre temps

    Cdlt

    Nekko

  12. #12
    Expert éminent 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
    Par défaut
    Citation Envoyé par Nekko Voir le message
    Désolé Menhir d'avoir demandé de joindre un fichier.
    Ce n'est pas une faute.
    Libre à toi de demander qu'un fichier soit présenté et de prendre le risque de l'ouvrir.
    Libre aussi à d'autres de ne pas vouloir prendre ce risque.

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Je vous avoue que je comprends encore moins qu'avant comment solutionner mon problème !

    Vraiment je m'excuse pour mon piètre niveau !

    Pour vos explications à propos des dates, c'est parfaitement clair, les dates sont donc un nombre géré avec un format spécifique.

  14. #14
    Membre éclairé
    Homme Profil pro
    Évaluation de la performance
    Inscrit en
    Avril 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Canada

    Informations professionnelles :
    Activité : Évaluation de la performance
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2018
    Messages : 39
    Par défaut
    Bonjour vatsyayana

    Un de tes deux formats ne semble pas être une date. C'est pour cette raison que la solution avec les intervalles te donne 0. Si tu ne peux pas modifier ce format, voici deux solutions possible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((GAUCHE(orders_export!$A$2:$A$50;10)=TEXTE(A3;"AAAA-MM-JJ"))*orders_export!$E$2:$E$50)
    ou tu insère une colonne dans ta feuille orders_export avec une formule du type
    Ta formule fonctionnera avec le résultat de cette colonne, elle te permettra de comparer deux chaine de même longeur.

    Il existe possiblement d'autres solutions possible mais si tu peux nettoyer ton fichier et fonctionner avec de "vrai" format date, tes calculs seront plus facile à réaliser.

    Bonne chance

  15. #15
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 93
    Par défaut
    Vraiment je m'excuse pour mon piètre niveau !
    pas de souci, c'est juste un déclic à avoir pour la compréhension
    Nom : excel et date.JPG
Affichages : 1990
Taille : 22,5 Ko
    pour le travail de comparaison, je regarde ça ce soir, ca me parait faisable via quelques artifices

  16. #16
    Expert éminent 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
    Par défaut
    Citation Envoyé par LeBo74 Voir le message
    Un de tes deux formats ne semble pas être une date.
    J'en suis persuadé moi aussi.
    Mais comme je lui ai déjà demandé deux fois, s'il n'a pas pris la peine de le vérifier, c'est vraiment du foutage de gueule.

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Citation Envoyé par Nekko Voir le message
    si tu tapes : 25/09/2018 en A1 et =gauche(A1;3) dans la case B1, tu verras que le résultat en B1 est 433 et non pas "25/". Tu vas en A1 et tu choisis "standard" comme format de cellule, tu verras que ta cellule A1 contient en fait 43368.
    Nekko
    J'ai testé... et en l'occurence, si ça me donne "25/" ! Etonnant non ? Pourtant c'est bien une date, car je peux changer le format, la date change en conséquence. Donc je ne comprends pas...

  18. #18
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Citation Envoyé par LeBo74 Voir le message
    Un de tes deux formats ne semble pas être une date. C'est pour cette raison que la solution avec les intervalles te donne 0. Si tu ne peux pas modifier ce format, voici deux solutions possible
    En effet, je pense que c'est la date au format "2018-09-19 21:57:40 +0200" de mon fichier export CSV qui ne soit pas au format date, car quand j'essaye de changer le format il ne se passe rien. Je vais essayer ta technique, même si ce n'est pas idéal pour moi d'ajouter une colonne à mon fichier car j'importe chaque jour de nouvelles lignes (bon, je n'aurai qu'à tirer sur la croix pour prolonger la formule de la colonne chaque jour, mais ça ne sera pas automatique)

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Citation Envoyé par Menhir Voir le message
    J'en suis persuadé moi aussi.
    Mais comme je lui ai déjà demandé deux fois, s'il n'a pas pris la peine de le vérifier, c'est vraiment du foutage de gueule.
    C'est de moi que tu parles ?
    C'est pas un peu excessif non ? Je suis (il me semble) courtoise (hé oui, ce n'est pas "il" mais "elle"), je vous ai informé que j'étais débutante, je fais de mon mieux...
    Ok tu as déjà demandé si mes colonnes étaient au format date mais tu n'as pas expliqué à quoi je peux le savoir !
    J'ai BIEN ÉVIDEMMENT vérifié, mon tableau, bien évidemment j'étais certaine d'avoir mis au format date, par contre, ma source, c'est un export CSV, ça ne vient pas de moi, mais bon, des datas avec des relevés de dates, il me semblait que ça ne pouvait être que des dates, j'ai essayé de modifier le format pour le mettre au format date, rien ne se passait... est-ce que ça signifie que c'est en fait du texte ? Je ne sais pas et je ne sais pas ce que je peux faire de plus, mais de là à qualifier mes tests hasardeux de "foutage de gueule", c'est pas très cool :/

    Bref...

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 69
    Par défaut
    Citation Envoyé par LeBo74 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((GAUCHE(orders_export!$A$2:$A$50;10)=TEXTE(A3;"AAAA-MM-JJ"))*orders_export!$E$2:$E$50)
    Cette solution malheureusement ne fonctionne pas, cela donne 0.

    Citation Envoyé par LeBo74 Voir le message
    ou tu insère une colonne dans ta feuille orders_export avec une formule du type
    Ça fonctionne !!! Même si ce n'est pas idéal car cela m'oblige à modifier une source de données mais c'est déjà top !

    Merci beaucoup LeBo74 !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [XL-2007] Copie d'image dans une cellule vers une cellule d'une autre feuille
    Par natsamfa dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 20/02/2017, 21h27
  2. [Toutes versions] coller les données d'une plage d'une cellule dans une cellule d'une autre feuille[VBA]
    Par arthson dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/01/2012, 17h37
  3. [XL-2007] problème de codage en vba ("copie d'une partie d'une cellule dans une cellule vide")
    Par skipeemed dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 26/10/2010, 17h01
  4. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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