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 sous condition avec excel 2016 [XL-2016]


Sujet :

Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut Copier-coller sous condition avec excel 2016
    Bonjour à tous !

    Mon premier post sur ce forum qui m'a déjà à de très nombreuses reprises sauvé la vie !

    Je ne suis pas débutante avec VBA ou en tout cas je suis 3 pitchnettes au-dessus de ce niveau, mais là je bloque. Généralement, j'arrive à m'en sortir après plusieurs heures de recherches et de crises de nerfs, mais là je ne trouve pas.

    Malheureusement, je ne vais pas pouvoir vous donner les fichiers sur lesquels je travaille, car ils sont internes à l'entreprise où je travaille.

    J'ai deux fichiers nommons-les : Mensuel.xlsm et KPIs.xlsm

    Dans Mensuel.xlsm j'ai un tableau où des colonnes s'ajoutent de mois en mois. Il y a un champs qui m'intéresse pour COPIER : les cellules de la ligne 6 à 12 sous la colonne intitulée Total ME % (et qui n'est donc pas fixes de fois en fois !)

    Dans KPIs.xlsm j'ai un tableau avec des colonnes fixes où je veux COLLER le champs de mon fichier Mensuel.xlsm

    Donc je cherche bien à faire un copié collé sous condition (je ne savais même pas que c'était possible) : copier les cellules de la ligne 6 à 12 de la colonne intitulée Total ME % (donc copier si on trouve Total ME %)

    Pourriez-vous m'aider ???

    Un grand grand grand merci !!!

    Et je suis d'avance désolée si je ne suis pas dans la bonne partie du forum !
    So'

  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 soba18 Voir le message
    Dans Mensuel.xlsm j'ai un tableau où des colonnes s'ajoutent de mois en mois. Il y a un champs qui m'intéresse pour COPIER : les cellules de la ligne 6 à 12 sous la colonne intitulée Total ME % (et qui n'est donc pas fixes de fois en fois !)
    Tu trouves la colonne contenant le texte "Total ME %" en lançant un Find sur la zone de tes titres et tu mets le résultat dans une variable de type Range.
    https://msdn.microsoft.com/fr-fr/lib.../ff839746.aspx

    Après avoir vérifié que le Find a trouvé quelque chose en testant si la variable n'est pas Nothing, tu peux obtenir la valeur de sa colonne avec la propriété Column à mettre dans une seconde variable de type Integer.
    https://msdn.microsoft.com/fr-fr/lib.../ff198200.aspx

    Ensuite, tu pourras utiliser cette seconde variable dans des Cells pour définir la zone à copier.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(6, MaColonne), Cells(12, MaColonne)).Copy
    ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Intersect(Rows("6:12"), Columns(MaColonne)).Copy

  3. #3
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Par défaut
    Bonjour,

    Un exemple :
    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
    Sub test()
    Const titre$ = "Total ME %"  'Titre de la colonne à chercher
    Dim rngSrc As Range          'Plage source
    Dim celDst As Range          'Cellule destination
     
      ' Définir la cellule destination : à adapter (feuille et cellule)
      Set celDst = Workbooks("KPIs.xlsm").Worksheets("FeuilleDestination").Range("A1")
      ' Chercher la plage source : à adapter (feuille et n° de ligne des titres)
      With Workbooks("Mensuel.xlsm").Worksheets("FeuilleSource").Rows(1)
        Set rngSrc = .Find(What:=titre, after:=.Cells(1, 1), LookIn:=xlValues, lookat:=xlWhole)
        If rngSrc Is Nothing Then
          MsgBox "Colonne " & titre & "  non trouvée. "
          Exit Sub
        Else
          Set rngSrc = Intersect(rngSrc.EntireColumn, .Parent.Rows("6:12"))
        End If
      End With
      rngSrc.Copy Destination:=celDst
     
    End Sub

  4. #4
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut MERCI
    Avant tout MERCI !

    Je vais abuser de la générosité de mes deux sauveurs !

    Pouvez-vous m'expliquer ce que je dois adapter pour que le code cherche également la colonne Total Déch% et me copie la cellule 12 ?

    J'essaie de l'adapter moi-même mais je n'y parviens pas

    MERCI MERCI MERCI

  5. #5
    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 soba18 Voir le message
    J'essaie de l'adapter moi-même mais je n'y parviens pas
    Tu plaisantes !!!
    Dans l'explication, tu remplaces "Total ME %" par "Total Déch%" et "6:12" par "12".

  6. #6
    Membre à l'essai
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut
    C'est le matin ! J'ai réussi à faire une grosse erreur d'oublier un expace et une deuxième d'oublier de modifier 6:12 en 12 ...

    Je suis bien désolée !!!! J'ai juste eu le temps de m'énerver sur moi-même 1 coup et j'ai trouvé ...

    Pardon sauveur 1 je ne voulais pas vous offenser ! Mais du vba le matin, c'est pas fait pour moi :s

    Belle journée à vous !

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

Discussions similaires

  1. copier coller sous condition
    Par d.deneys dans le forum Macros et VBA Excel
    Réponses: 52
    Dernier message: 25/08/2013, 12h11
  2. [XL-2013] Aide Vba copier coller sous condition
    Par d.deneys dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 22/08/2013, 11h34
  3. simplification copier coller sous vba avec integration li/col variable
    Par boom47 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/06/2012, 14h42
  4. [XL-2003] Copier coller sous condition
    Par Nathan87 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 10/03/2011, 11h20
  5. [VBA-E] Copier coller sous conditions de couleur
    Par titeZ dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 10/04/2007, 18h27

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