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 :

MACRO copie cellules avec condition si [XL-2000]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2012
    Messages : 13
    Points : 7
    Points
    7
    Par défaut MACRO copie cellules avec condition si
    Bonjour,

    Après des heures de recherches et d'essais vains, j'ai trouvé ce site que je trouve super intéressant et j'en profite donc, pour vous exposer mon problème.
    J'ai dans un classeur deux onglets (A, B).
    Je souhaite que le premier onglet (A) soit un listing de certaines informations.
    Ces informations (colonne A à H) seront copiées sur l'onglet B pour chaque ligne du 1er onglet qui a dans sa colonne I noté "oui".
    Pour moi, la difficulté est de coller certaines cellules et non toute la ligne...
    Un grand merci par avance à ceux qui voudront bien m'aider... Si vous en avez besoin, je peux apporter d'autres précisions. Encore merci.

    Voilà ce que j'ai fait... mais qui me copie la ligne entière...
    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
    Sub Filtre()
     
      Dim Lig     As Long
      Dim Col     As String
      Dim NbrLig  As Long
      Dim NumLig  As Long
     
      Sheets("B").Activate ' feuille de destination
     
      Col = "I"                 ' colonne de la donnée non vide à tester
      NumLig = 1
      With Sheets("A")     ' feuille source
      NbrLig = .Cells(65536, Col).End(xlUp).Row
      For Lig = 2 To NbrLig
        If .Cells(Lig, Col).Value = "oui" Then
          .Cells(Lig, Col).EntireRow.Copy
          NumLig = NumLig + 1
          Cells(NumLig, 1).Select
          ActiveSheet.Paste
        End If
      Next
      End With
     
    End Sub

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Bonjour,

    Si je comprend bien ton besoin,

    pour copier uniquement de A à H
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If .Cells(Lig, Col).Value = "oui" Then
       .Range("A" & Lig & ":H" & Lig).Copy

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2012
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Merci.

    J'ai un message qui m'indique : "erreur de compilation : erreur de synthaxe"

    Est ce qu'il faut que j'ajoute le nom de l'onglet de destination à ce niveau ou bien l'erreur n'a-t-elle rien à voir ?

  4. #4
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    Il faut enlever le dernier guillemet dans la proposition de Jérome

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2012
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Mille mercis !!!

    Vous êtes trop forts !!!

    Je vais abuser...

    Encore une petite question...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If .Cells(Lig, Col).Value = "oui" Then...
    Je souhaiterais ajouter : si la valeur = oui ou NC

    J'ai essayé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If .Cells(Lig, Col).Value = "oui" or "NC" Then...
    mais ça ne va pas....

    Merci

  6. #6
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    n'oublie pas d'utiliser les balises de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If .Cells(Lig, Col).Value = "oui" or .Cells(Lig, Col).Value = "NC" Then

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2012
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    J'avais trouvé entre temps... mais merci quand même...

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

Discussions similaires

  1. Macro qui calcule le nombre de cellules avec condition sur couleur
    Par rihab92 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/04/2015, 15h40
  2. Réponses: 6
    Dernier message: 06/01/2014, 21h08
  3. Réponses: 9
    Dernier message: 01/10/2012, 15h44
  4. cellules avec condition relié avec checkbox
    Par lavalois dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 19/03/2008, 09h52
  5. [XSLT]copie partielle avec condition sur les axes
    Par MasterOfChakhaL dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 13/10/2006, 19h15

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