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 :

comparaison des cellules VBA (MAcro Excel) [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Par défaut comparaison des cellules VBA (MAcro Excel)
    Bonjour,

    Je debute en Macro Excel (VBA). J'ai une question.

    Problematique:
    Date1 Date2 Pression2

    Jai une colonne Date1 et deux colonnes Date2 et sa Pression2 associee.

    Je souhaite filtrer la Date2 pour qu'elle corresponde a la Date1

    exemple:
    Date1
    16/08/2012
    17/08/2012
    19/08/2012
    21/08/2012
    22/08/2012

    Date2 Pression2
    16/08/2012 100
    18/08/2012 110
    19/08/2012 140
    20/08/2012 145
    21/08/2012 150
    22/08/2012 165
    24/08/2012 170
    25/08/2012 172
    26/08/2012 175
    27/08/2012 180
    28/08/2012 190


    Mon resultat final doit etre:
    Date Finale Pression Finale
    16/08/2012 100
    19/08/2012 140
    21/08/2012 150
    22/08/2012 165



    Donc je dois filtrer pour obtenir ce resultat. Comparer cellule par cellule jusqu'a ce que je rencontre une cellule vide donc je passe a la suivante.. est ce que vous avez une idee de la syntaxe?

    Merci pour votre aide

    mon bout de code que je dois completer est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Sub Marc()
    ' Marc Macro
        Sheets("Sheet2").Select
        Range("A2").Select
     
    End Sub
    Mes donnees sont dans le sheet2 et dans le sheet1 j'ai juste le bouton que j'ai mis qui sert a excecuter ce filtre...

    Merci encore

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Par défaut
    Essaie ça

    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
    Sub Marc()
     
    Dim cpt_col_A As Integer, cpt_col_B As Integer
    Dim ligneCopie As Integer
     
    ligneCopie = 0
     
    For cpt_col_A = 1 To Range("a65536").End(xlUp).Row
        For cpt_col_B = 1 To Range("b65536").End(xlUp).Row
            If Range("a" & cpt_col_A & "").Value = Range("b" & cpt_col_B & "").Value Then
                ligneCopie = ligneCopie + 1
                Range("h" & ligneCopie & "").Value = Range("a" & cpt_col_A & "").Value
                Range("i" & ligneCopie & "").Value = Range("c" & cpt_col_B & "").Value
            End If
        Next cpt_col_B
    Next cpt_col_A
     
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Par défaut
    evx136 AWESOME! MAGNIFIQUE...


    Ca marche parfaitement lorsque je 'Run' la Macro. Derniere question, j'ai ajouté un bouton dans le sheet1, évidement une fonction peut etre associée a ce bouton. ce que je souhaiterai faire est d'executer la macro en appuyant sur le bouton. j'ai essayé en copiant collant votre code dans cette fonction bouton mais la macro ne s'execute pas.

    Merci encore pour votre aide.


    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
     
    Private Sub CommandButton1_Click()
     
    Dim cpt_col_A As Integer, cpt_col_B As Integer
    Dim ligneCopie As Integer
     
    ligneCopie = 1
     
    For cpt_col_A = 2 To Range("a65536").End(xlUp).Row
        For cpt_col_B = 2 To Range("b65536").End(xlUp).Row
            If Range("a" & cpt_col_A & "").Value = Range("b" & cpt_col_B & "").Value Then
                ligneCopie = ligneCopie + 1
                Range("d" & ligneCopie & "").Value = Range("a" & cpt_col_A & "").Value
                Range("e" & ligneCopie & "").Value = Range("c" & cpt_col_B & "").Value
            End If
        Next cpt_col_B
    Next cpt_col_A
     
     
    End Sub
    En piece jointe un snapshot
    Images attachées Images attachées  

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonjour,
    Il faut eviter les select, activate... et toujours preciser devant les objets tels que range, cells.. la feuille et le classeur concerne
    Remplace tes range... par des Thisworkbook.worksheets("sheet1").range..

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Par défaut
    Bonjour

    Je te joins un fichier avec ta solution.

    Cordialement
    Fichiers attachés Fichiers attachés

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Par défaut
    This is awesome Mr evx136

    Merci encore, j'apprecie votre aide





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

Discussions similaires

  1. [VBA]Macro Excel : les premiers pas ?
    Par epfyffer dans le forum SDK
    Réponses: 3
    Dernier message: 28/03/2007, 15h12
  2. Protection des modules VBA sous Excel
    Par Bercud dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/09/2006, 12h35
  3. comparaison des cellules
    Par corwin44 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/09/2006, 16h12
  4. Réponses: 19
    Dernier message: 06/07/2006, 15h35
  5. Format des cellules en Ole Excel
    Par kurul1 dans le forum C++Builder
    Réponses: 9
    Dernier message: 05/04/2005, 16h20

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