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 :

Copie de dates dans une autre feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 69
    Par défaut Copie de dates dans une autre feuille
    Bonjour,

    Je souhaiterais copier les dates d'une feuille sous plusieurs cellules vers une seule cellule d'une autre feuille (format jj/mm) :

    Exemple :

    Feuill1

    A1 = 10/02/2017
    A2= 20/03/2017
    A3= 26/08/2017
    A4 = vide
    A5= vide

    Feuill2 :

    A1 = 10/02 20/03 26/08

    J'ai essayé avec la fonction TEXTE mais lorsque la cellule est vide (exemple : A4 et A5), j'ai une date 00/01 qui s’insère.

    Merci pour votre aide

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Si tu nous montrais le code que tu as utilisé, on pourrait mieux t'aider.
    Un test logique sur le contenu de la cellule doit pouvoir resoudre ton problème. La question est de savoir que fait-on quand une cellule est vide ?
    Un caractère espacé ou rien. Dans ce cas, si une cellule vide se trouve avant ou entre deux cellules remplies, la lecture de la chaîne concaténée ne sera-t-elle pas confuse ?
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

    Informations forums :
    Inscription : Juin 2010
    Messages : 69
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =TEXTE(Feuil1!A1;"jj/mm")&" "& TEXTE(Feuil1!A2;"jj/mm")&" "& TEXTE(Feuil1!A3;"jj/mm")&" "& TEXTE(Feuil1!A4;"jj/mm")&" "& TEXTE(Feuil1!A5;"jj/mm")
    Lorsque je saisie cette formule, j'obtiens : 10/02 20/03 26/08 00/01 00/01

    Il ne devrait rien y avoir pour les 2 dernières dates et si toutes les cellules sont vide j’obtiens 00/01 00/01 00/01 00/01 00/01

    Les cellules vides ne se trouveront jamais entre deux cellules, toujours en fin de colonne.

    J'utilise les cellules A1 à A11. Si j'ai 5 dates, les cellules A6 à A11 seront vides.

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Les cellules vides ne se trouveront jamais entre deux cellules, toujours en fin de colonne.
    Et bien, c'est encore plus simple à gérer.

    [EDIT]
    Mais je viens de voir que ce n'est pas du code VBA mais une formule que tu utilises alors que tu es dans la rubrique VBA.
    La plage de cellules est-elle de hauteur fixe ?

    Eant donné que je pensais que c'était du VBA, voici une fonction que tu peux utiliser soit en VBA soit dans excel comme fonction personnalisée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Function JoinDate(rng As Range, Optional mask As String = "dd/mm") As String
     Dim c As Range
     For Each c In rng
      JoinDate = JoinDate & format(c, mask) & " "
     Next
     JoinDate = Trim(JoinDate)
     Set c = Nothing
    End Function
    Utilisation dans Excel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =JoinDate(Feuil1!A1:A11)
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

    Informations forums :
    Inscription : Juin 2010
    Messages : 69
    Par défaut
    Désolé si je me suis trompé de forum !

    Par contre j'ai testé la formule dans Excel, ça ne fonctionne pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =JoinDate(Feuil1!A1:A11)
    Il renvoi l'erreur #NOM?

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Il faut placer la fonction dans un module du classeur et celui-ci doit être sauvé sous "Classeur supportant les macros"
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. Copie d'une feuille dans une autre feuille
    Par sab_info dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/05/2013, 12h18
  2. [XL-2010] Recherche multicritères et copie des résultats dans une autre feuille
    Par chacha49 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/08/2011, 22h25
  3. [XL-2003] recherche emplacement d'une date dans une autre feuille
    Par wuging dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 27/08/2010, 16h19
  4. Copie de données filtrées dans une autre feuille
    Par papagei2 dans le forum Excel
    Réponses: 1
    Dernier message: 30/08/2007, 16h16
  5. Réponses: 1
    Dernier message: 17/10/2006, 17h37

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