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 Cellules avec critère


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Par défaut Copie Cellules avec critère
    Bonjour,

    Je cherche à copier certaines cellules d'une ligne d'une feuille vers une autre feuille si la valeur contenue dans la cellule A de chaque ligne correspond à une date contenu dans la cellule A1 de la feuille cible
    Mon classeur se compose d’une feuille Sheets(« Saisie ») (source ou je veux copier) vers une feuille Sheets(« RecapJour »).

    Si la cellule de la feuille « Saisie » correspond à la date se trouvant en A1 dans la feuille « RecapJour » alors copier les valeurs des cellules B,D,M,N,O,P,Q,R,S,V,W,X,Y,Z de la feuille Saisie.

    J’ai trouvé un morceau de code sur internet que je cherche à adapter mais ça ne fonctionne pas

    Je m’en remet à nouveau à vos conseils

    Merci d'avance

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Private Sub Worksheet_Activate()
     
     
    Dim sh, i, DernCol As Integer
    Dim Wb_dest As String
    Dim Wb_dep As String
     
    Application.ScreenUpdating = False
     
    Wb_dep = ActiveWorkbook.Name
    'Récupération de la position de la cellule active
    lgn = ActiveCell.Row
    Col = ActiveCell.Column
     
     
     
    'effacements des données de la feuille "RecapJour"
    Sheets("RecapJour").Select
        Sheets("RecapJour").Range("A4").Select
        Sheets("RecapJour").Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
        Selection.ClearContents
    Sheets("RecapJour").Range("A4").Select
     
     
     
    Ligne = 4
    For i = 2 To Workbooks(Wb_dep).Sheets(1).Range("A65536").End(xlUp).Row
    If Workbooks(Wb_dep).Sheets(1).Range("A" & i) = Sheets("RecapJour").Range("B1") Then
    Workbooks(Wb_dep).Sheets(1).Range("B" & i).Copy Workbooks(Wb_dep).Sheets(2).Range("A" & Ligne)
    Workbooks(Wb_dep).Sheets(1).Range("D" & i).Copy Workbooks(Wb_dep).Sheets(2).Range("B" & Ligne)
    Ligne = Ligne + 1
    End If
    Next i
     
    ' Repositionnement sur la cellule
    Sheets("Saisie").Select
    Sheets("Saisie").Cells(lgn, Col).Select
     
    End Sub

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Par défaut
    Salut,

    Est-ce que tu peux nous dire ce qui ne fonctionne pas sur ta macro? Les messages d'erreurs notamment.

    Cordialement

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Par défaut
    Bonjour,

    Ça bloqué dès le début car j'aimerai que la macro se lance des que je click sur la feuille "RecapJour".

    De plus je n'arrive pas a copier en valeur uniquement les colonnes spécifiées dans mon premier post :/

  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 216
    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 216
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour copier des lignes d'une liste de données suivant critères, je ne peux te conseiller la méthode AdvancedFilter (filtre avancé d'excel) de l'objet Range. Une ligne de code si tu nommes les (Gestionnaire des noms) plages source, critère et cible sinon moins de 10 lignes si tu dois les déclarer dans ton code
    Je te conseille avant tout de lire Les filtres avancés ou élaborés dans Excel

    Un exemple ici Exporter des lignes suivant critères avec la méthode AdvancedFilter
    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 éclairé
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Par défaut
    Citation Envoyé par Philippe Tulliez Voir le message
    Bonjour,
    Pour copier des lignes d'une liste de données suivant critères, je ne peux te conseiller la méthode AdvancedFilter (filtre avancé d'excel) de l'objet Range. Une ligne de code si tu nommes les (Gestionnaire des noms) plages source, critère et cible sinon moins de 10 lignes si tu dois les déclarer dans ton code
    Je te conseille avant tout de lire Les filtres avancés ou élaborés dans Excel

    Un exemple ici Exporter des lignes suivant critères avec la méthode AdvancedFilter
    Merci pour ta réponse.

    Mon problème est que je ne dois pas sélectionner tout le tableau mais seulement certaines colonnes du tableau ce qui complique les choses …

  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 216
    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 216
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Mon problème est que je ne dois pas sélectionner tout le tableau mais seulement certaines colonnes du tableau ce qui complique les choses …
    Et bien justement, c'est un des gros avantages de l'exportation avec AdvancedFilter voir chapitre VII-B. Exportation partielle des données filtrées
    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

Discussions similaires

  1. [XL-2010] Copie cellule avec format personnalisé
    Par bbell dans le forum Excel
    Réponses: 15
    Dernier message: 08/04/2013, 22h20
  2. [XL-2000] MACRO copie cellules avec condition si
    Par Killie dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 12/01/2012, 12h27
  3. Réponses: 5
    Dernier message: 10/02/2011, 10h37
  4. [XL-2007] Copier contenu d'une cellule avec critères à définir
    Par gabi75 dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 01/06/2010, 16h07
  5. [VBA-E] Copier une plage de cellules avec critère
    Par jfamiens dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 13/06/2006, 17h34

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