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 :

il me copie pas les bonnes colonnes


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club Avatar de melodyyy
    Inscrit en
    Octobre 2006
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 401
    Points : 50
    Points
    50
    Par défaut il me copie pas les bonnes colonnes
    voila mon code:

    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
    40
    41
    42
    43
    44
    45
    46
    47
     
    Sub macropatrice()
     
    Dim FL1 As Worksheet
    Dim FL2 As Worksheet
    Dim Plage1 As Range
    Dim Plage2 As Range
    Dim c
    Dim i As Integer
     
    i = 1
     
    'Ouvrir le planning: j'ai pas l'adresse non plus'
    'Ouvril le fichier csv: je peux pas mettre l'adresse je l'ai pas
     
        'Gèle l'écran pour accélérer le traitement
        Application.ScreenUpdating = False
        Set FL1 = Workbooks("1Planning_de_synthese_des_versions_v6.xls").Worksheets("Détails")
        Set FL2 = Workbooks("yTTxpPR00_02.csv").Worksheets("yTTxpPR00_02")
         Set Plage1 = FL1.Range(Cells(9, 4), Cells(FL1.Cells(65535, 4).End(xlUp).Row, 9))
          Derniereligne = FL2.Cells(65535, 5).End(xlUp).Row
    Adresse = Range(Cells(2, 5), Cells(Derniereligne, 5)).Address
    Set Plage2 = FL2.Range(Adresse)
     
    'parcours les cellules de la colonne 4 feuille Planning
        For Each Cell In Plage1
     
    'recherche de l'équivalence dans feuille yTTxpPR00_02
            With Plage2
                Set c = .Find(Cell.Value, LookIn:=xlValues)
     
    'Donnée trouvée, on passe, donnée non trouvée on copie les cellules correspondante des colonnes G,H,I de yTTxpPR00_02.csv à Planning
                'je sais pas dire'
                If Not c Is Nothing Then
                ActiveCell.Offset(n, 3) = ActiveCell.Offset(n, 3)
                 Else
     
                 End If
     
                Set c = Nothing
                End With
     
        Next
        Application.ScreenUpdating = False
        Set FL1 = Nothing
        Set FL2 = Nothing
    End Sub
    Mais il me copie pas les bonnes colonnes... je ne veux que les colonnes D,F,G et I des 2 fichiers...

    snif

  2. #2
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Une piste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("D:D,F:F,G:G,I:I").Copy

  3. #3
    Membre du Club Avatar de melodyyy
    Inscrit en
    Octobre 2006
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 401
    Points : 50
    Points
    50
    Par défaut
    Euh oui mais ou ? parce que la il me copie la ligne en fait du coup je vois pas ou
    et puis il fait pas trop ce que je voudrais...la il me copie toute la ligne quand il trouve la même chose sauf que moi ce que je veux c'est si il trouve le même intitulé je copie les colonnes en question, si je ne trouve pas c'est qu'il y'a des nouvelles lignes dans l'autre fichier et la il me copie les colonnes de la new ligne.

    Tu vois ? j'ai commencé y'a 2 mois cette macro du coup je suis un peu perdu quand je m'y remet :p

  4. #4
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Tu veux copier les colonnes intégralement ou seulement certaines valeurs de celles-ci selon un critère de recherche ?

  5. #5
    Membre du Club Avatar de melodyyy
    Inscrit en
    Octobre 2006
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 401
    Points : 50
    Points
    50
    Par défaut
    Nan en fait c'est "pire" ce serait la valeur de la cellule des colonnes citées, de la ligne correspondante.

    ex: si je trouve patatra alors il me copie les valeurs des colonnes D, G, F etc..pas toute la ligne et toute la colonne quoi..

    sauf que ce qui est genant et usne à gaz c'est que je ne sais jamais à quelle ligne je vais avoir à faire puisque je ne sais pas ou il va trouver la même chose....


    Merci pi désolé pour la réponse, j'ai pas pu répondre jusque la

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    258
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 258
    Points : 306
    Points
    306
    Par défaut
    bonjour Melodyyy

    dans ton cas, le mieux est d'expliciter en francais ligne par ligne ce que tu veux faire (et d'ailleur tu as bien commencé).

    bien sur si tu écris

    ex: si je trouve patatra alors il me copie les valeurs des colonnes D, G, F etc..pas toute la ligne et toute la colonne quoi..
    C'est plus dur pour connaitre exactement tes critères de recherche et les fonctions à appliquer!

  7. #7
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Je n'ai pas étudié tout ton code mais...

    Pourquoi utilises-tu ActiveCell après un Find?
    Tu as le Range c qui est la cellule trouvée.

    C'est à partir de c que tu dois faire ton Offset (il me semble...).
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  8. #8
    Membre du Club Avatar de melodyyy
    Inscrit en
    Octobre 2006
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 401
    Points : 50
    Points
    50
    Par défaut
    J'explique tout

    Voila en fait j'ai 2 tableaux. Il se base sur un. Lorsqu'il trouve une concordance entre les 2, il copie la colonne A et la C,D,G, F.
    Si il ne trouve pas de concordance alors il passe et copie les nouvelles lignes en dessous donc les même colonnes.

    Mon ennui c'est que c'est un peu une usine à gaz l'histoire...

  9. #9
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Vu que tu ne me réponds pas, je repose la question:
    Citation Envoyé par AlainTech
    Pourquoi utilises-tu ActiveCell après un Find?
    Tu as le Range c qui est la cellule trouvée.

    C'est à partir de c que tu dois faire ton Offset (il me semble...).
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  10. #10
    Membre du Club Avatar de melodyyy
    Inscrit en
    Octobre 2006
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 401
    Points : 50
    Points
    50
    Par défaut
    parce que et peut etre à tord ce qui me gene c'est que je ne sais jamais sur quelle cellule ça va tomber. En revanche ce que je sais c'est qu'il doit copier que des infos qui sont sur la même ligne..

    Faut pas ?

  11. #11
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Faut vraiment que tu apprennes à lire...
    Citation Envoyé par AlainTech
    Tu as le Range c qui est la cellule trouvée.
    C'est à partir de c que tu dois faire ton Offset (il me semble...).
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

Discussions similaires

  1. Execute_query ne retourne pas les bonnes valeurs
    Par complicated dans le forum Forms
    Réponses: 2
    Dernier message: 23/11/2011, 12h12
  2. La commande shortcut n'affiche pas les bonnes infos
    Par DeVit dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 11/05/2011, 15h25
  3. Requete qui n'affiche pas les bonnes valeurs
    Par snips67 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 29/01/2010, 11h54
  4. SWIG ne genere pas les bonnes methodes!
    Par nezdeboeuf62 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 01/03/2007, 19h24
  5. [SQL] Pb Mysql n'insert pas les bonnes valeur dans la bdd
    Par potao dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 11/02/2007, 04h12

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