Macro copier/coller
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Macro copier/coller



  1. #1
    Lolita01

    Macro copier/coller


    ------

    Bonjour,
    Je suis amené à développer une macro qui me permet de copier les donner d’un classeur à un autre classeur en tenant compte de quelques conditions.
    Donc j’ai un classeur (mère) qui lui contient des données en colonne (semaine, donnés, quantité, date1, date2) ces données sont mis à jours régulièrement c’est-à-dire ils varient chaque jour.
    Et un autre classeur (fils) qui lui est vierge et sur le quelle je dois coller mes donnée automatiquement grâce au bouton « Récup » ce bouton va permettre de :
    1- Ouvrir et sélectionner le fichier mère
    2- Copier automatiquement la colonne semaine qui se trouve dans la colonne B du classeur (mère) dans la colonne A du classeur (fils).
    3- Ne copier que les « A » de la colonne donnée ainsi que les quantités correspondantes et la date 1 et finalement copier la colonne date 2 à condition que sa cellule soit vide.
    En bref : copier toute les lignes qui ont une date2 = vide et donnés = A
    J’aimerai bien que quelqu’un m’aide car je n’ai aucune connaissance en macro
    Merci

    -----
    Images attachées Images attachées  
    Dernière modification par Antoane ; 05/11/2015 à 10h48. Motif: Conversion pdf->png

  2. #2
    cherbe

    Re : Macro copier/coller

    Bonjour
    Tu parles de classeur. Tu utilises sans doute un logiciel tableur mais lequel ? Tu ne crois pas que c'est important pour t'aider ?

    Trop souvent la même rengaine : par paresse ou négligence, je vous donne un minimum d'info ; démme!!!! vous vous me dépanner !

  3. #3
    Lolita01

    Re : Macro copier/coller

    Bonjour cherbe ,

    désolé j'ai oublié de le dire mais les deux c'est des fichiers Excel
    tout simplement quand je dis un Classeur = Classeur Excel

  4. #4
    Chanur

    Re : Macro copier/coller

    Bonjour,

    Il y a une solution qui marche pas mal pour démarrer, c'est de faire macro / enregistrer et de faire à la main la manip que tu veux programmer.
    Ça te donne une macro de base (avec le choix de cellule ou autre écrit en dur) qui est un bon point de départ.
    Ce qui se conçoit bien s'énonce clairement ; et les mots pour le dire arrivent aisément.

  5. A voir en vidéo sur Futura
  6. #5
    cherbe

    Re : Macro copier/coller

    Citation Envoyé par Chanur Voir le message
    Bonjour,
    Il y a une solution qui marche pas mal pour démarrer, c'est de faire macro / enregistrer et de faire à la main la manip que tu veux programmer.
    Ça te donne une macro de base (avec le choix de cellule ou autre écrit en dur) qui est un bon point de départ.
    Bonjour
    Oui c'est généralement un bon moyen pour débuter avec VBA (le langage macro) mais dans ce cas précis, il y a plusieurs conditions à vérifier avant la copie ; ces conditions ne peuvent pas être enregistrés. Il faut les rédiger soi-même !

  7. #6
    Lolita01

    Re : Macro copier/coller

    Bonjour cherbe et chanur,

    J’ai effectivement fait le teste en enregistrant une manip manuel mais comme le précise cherbe c'est un cas un peux plus complexe qui nécessite une macro plus développé

  8. #7
    cherbe

    Re : Macro copier/coller

    Citation Envoyé par Lolita01 Voir le message
    Bonjour cherbe et chanur,

    J’ai effectivement fait le teste en enregistrant une manip manuel mais comme le précise cherbe c'est un cas un peux plus complexe qui nécessite une macro plus développé
    Bon, après avoir fait ma mauvaise tête parce que tu n'avais pas donné une information essentielle, je m'y colle à condition que tu promettes d'être plus vigilante à l'avenir, na
    Je suppose que dans ton exemple de données, le mot "semaine" est dans la cellule B1 (autre info manquante).
    Le code ci-dessous n'a pas été testé. Il peut contenir des erreurs de syntaxe
    Code:
    sub copie()
          Windows("Classeur_mere").Activate                               ' indiquer le nom du fichier entre les quottes
          Sheets("Feuil1").Select                                                  ' indiquer le nom d'onglet entre les quottes
          range("B2").Select
          Do while Activecell.Value <>""                                        'tant que la cellule n'est pas vide
               If Cells(0,1).value = "A" and Cells(0,4).value = "" then     'test de la cellule à droite (+1) et de la 5e cellule (+4) de la même ligne
                  cellule_cible=activecell.Address                               ' par sécurité, on stocke l'adresse de la cellule active afin d'y revenir plus tard
                  ActiveCell.Range("A1:D1").Copy                             'on copie les 4 cellules de la ligne active, il est inutile de copier la 5e qui est vide
                  Windows("Classeur_fille").Activate 
                  Sheets("Feuil1").Select
                  range("B2").Select
                  if Activecell.value <>"" then                                  'si B1 n'est pas vide
                    ActiveCell.End(xlDown).Select                             'on se déplace sur la dernière valeur de la colonne
                    cells(1,0).select                                                 'on descend sur la ligne du dessous qui est vide
                 end if
                ActiveSheet.Paste                                                  ' on colle ce qui a été copié
                Application.CutCopyMode = False                            ' on désactive la copie
                Windows("Classeur_mere").Activate                        ' on revient dans le classeur mère      
                Sheets("Feuil1").Select                                                     
                range(cellule_cible).select                                       'on revient sur la cellule testée plus haut
            End If
            Cells(1,0).Select                                                       'on passe à la ligne suivante
         loop                                                                           'on boucle en revenant sous l'instruction DO
    end sub
    Dernière modification par cherbe ; 06/11/2015 à 17h42.

Discussions similaires

  1. Copier coller une image
    Par sewer dans le forum Internet - Réseau - Sécurité générale
    Réponses: 5
    Dernier message: 19/08/2010, 09h28
  2. copier-coller impossible
    Par invitee9abb5f7 dans le forum Sécurité et malwares : désinfectez votre machine
    Réponses: 4
    Dernier message: 06/05/2010, 12h03
  3. Copier/Coller
    Par azt dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 06/01/2007, 20h20
  4. copier coller impossible??!
    Par r17777 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 8
    Dernier message: 29/04/2006, 08h23