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 :

Recherche colonne Date


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2014
    Messages : 66
    Par défaut Recherche colonne Date
    Bonjour tout le monde

    je reçoit un fichier toutes les semaines et dans fichier j'ai une colonne date sous forme oct.-14 pour exemple c'est une date sous format mmm-yy

    dont voici la colonne

    oct.-14
    Total
    1526
    118407,53
    1452
    95%
    74

    dans mon code j'ai écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
        'Mois = CDate("1/" & Format(DateAdd("m", -1, Date), "mmm"))
            Mois = Format(Now, "[$-40C]mmm.-yy;@")
     
    'Récupérer la dernière colonne
     
     p = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
     bFind = False
     
     For A = 1 To p
     
        If Sheets("D24").Cells(8, A).Value = Mois Then
     
            d = A
            bFind = True
            Exit For
        End If
    Next A
    le but c'est de copier cette colonne et la coller sur une autre feuille X mais le problème j'arrive pas a sélectionner la cellule concerner merci pour votre aide! c'est urgent svp

  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 recherches une cellule contenant une date et pour éviter des soucis, je chercherais suivant la date.
    Quelque soit le format de cette date
    Exemple pour trouver la date (J'utilise l'entier parce-que tu as employé la fonction NOW qui renvoie la date et l'heure)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Int(Range("B2").Value) = Date Then MsgBox "Yes"
    Exemple pour trouver le mois et l'année de la date du jour.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     If (Month(Range("b2")) And Year(Range("b2"))) = (Month(Date) And Year(Date)) Then
      MsgBox "Yes"
     End If
    Pour copier la 4ème colonne d'une plage vers une autre cellule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("D2:I17").Columns(4).Copy Range("R1")
    A adapter en ajoutant la filiation (classeur et feuille des cellules)
    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é
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2014
    Messages : 66
    Par défaut recherche
    merci pour ta réponse j'ai juste définit le mois mois comme ça pour voir si ça me copie la cellule mais la macro ne le fait pas

    la colonne oct.14 change chaque mois prochain il s’appellera nov.-14 AUFAIT je veux récupérer cette colonne à chaque fois je lance la macro c'est pourquoi je fais ma boucle

  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,
    Je me suis rendu compte que je me suis trompé dans le test logique.
    Le test pour vérifier si une date contenue dans une cellule est de la même année et le même mois que la date du jour est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If (Year(.Cells(1, c) = Year(Date)) And (Month(.Cells(1, c)))) = Month(Date) Then
    Imaginons un tableau dans une plage $A$1:$O$17 d'une feuille nommée [CA] contenant en ligne 1, des dates peu importe le format
    Voici un exemple de code copiant lla colonne contenant la date du mois et de l'année de la date du jour vers la cellule A1 de la feuille nommée [Export]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub CopyColumn()
     Dim rngSource As Range, rngTarget As Range, c As Integer
     With ThisWorkbook
      Set rngSource = .Worksheets("CA").Range("A1").CurrentRegion
      Set rngTarget = .Worksheets("Export").Range("A1")
     End With
     With rngSource
      For c = 1 To .Columns.Count
       If (Year(.Cells(1, c) = Year(Date)) And (Month(.Cells(1, c)))) = Month(Date) Then
        Debug.Print (Year(.Cells(1, c)) And Month(.Cells(1, c))) & " - " & _
                    (Year(Date) And Month(Date))
        .Columns(c).Select
        .Columns(c).Copy rngTarget
       End If
      Next
     End With
    End Sub
    Attention que les dates contenues dans les cellules de la première ligne doivent être des nombres entiers (pas d'heure) sinon il y a lieu d'ajouter la fonction Int
    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é
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2014
    Messages : 66
    Par défaut recherche colonne
    re Philippe merci pour ta réponse , j'ai testé ton code et j'ai vu qu'il me trouve la date de la dernière cellule renseignée mais moi mon souci c'est de dire à la macro d'aller chercher sur la ligne 8 la cellule qui s'appelle par exemple sept.-14 et me copier sa colonne je te joint mon fichier pour voir le format date merci d'avance

  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,
    Pourquoi persistes-tu as écrire ton texte entre les balises réservées au Code VBA ?
    C'est totalement illisible.
    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

  7. #7
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2014
    Messages : 66
    Par défaut
    excuse moi j'ai testé ton code et j'ai vu qu'il me trouve la date de la dernière cellule renseignée mais moi mon souci c'est de dire à la macro d'aller chercher sur la ligne 8 la cellule qui s'appelle par exemple sept.-14 et me copier sa colonne je te joint mon fichier pour voir le format date merci d'avance

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/12/2013, 10h23
  2. recherche heure dans colonne date+heure
    Par lebowsky60 dans le forum Excel
    Réponses: 4
    Dernier message: 18/12/2013, 12h58
  3. Réponses: 18
    Dernier message: 05/04/2012, 11h06
  4. rechercher une date et copier la colonne dans un autre onglet
    Par jd69001 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/02/2012, 20h09
  5. Recherche sur date avec une colonne de type varchar
    Par Cladjidane dans le forum Requêtes
    Réponses: 3
    Dernier message: 21/08/2008, 22h35

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