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 :

Copier coller données pendant execution macro [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut Copier coller données pendant execution macro
    Bonsoir,

    Je me permet de venir vers vous pour copier coller entre 2 classeur pas ouvert sur le même Excel
    J'explique:

    j'ai deux classeur tout les deux toujours ouvert:
    - Bdd_bandeau
    - Bandeau

    Dans Bandeau j'ai une macro qu'y tourne en continu
    je saisie des données dans Bdd_Bandeau

    Et je souhaiterais copier coller les données de la feuil1 du classeur Bdd_Bandeau dans le classeur Bandeau pendant l'exécution de la macro en continu du classeur Bandeau.

    J'ai essayer 2 codes:

    - celui-ci dans le fichier Bdd_Bandeau Qui fonctionne que quand la macro en continu dans le classeur Bandeau n'est pas lancer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub recup_donnes()
     
    Workbooks("Bandeau.xlsm").Worksheets("Feuil2").Cells.ClearContents ' Efface le contenu de la feuille qui va recevoir les données
    Workbooks("Bdd_Bandeau.xlsm").Worksheets("Feuil1").Cells.Copy _
     Workbooks("Bandeau.xlsm").Worksheets("Feuil2").Range("A1") 'Copie-colle le fichier
     
    End Sub
    Et celui-ci dans le classeur Bandeau pendant la boucle:

    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
    Sub test4()
       Dim I As Long, nbLignes As Long
     
       nbLignes = Sheets("Feuil2").Cells(Rows.Count, "A").End(xlUp).Row
     
       For I = 1 To nbLignes
       '......................
    Workbooks("Bdd_Bandeau.xlsm").Sheets("Feuil1").Cells.Copy Destination _
    :=Workbooks("Bandeau.xlsm").Sheets("Feuil2").Range("A1")
     '..................
        répertoirePhoto = "F:\vincent\bandeau\"
         On Error Resume Next
         ActiveSheet.Shapes("monimage").Delete
           Set img = ActiveSheet.Pictures.Insert(répertoirePhoto & I & ".png")
           img.Name = "monimage"
           img.Left = [B2].Left
           img.Top = [B2].Top
           img.Height = [B2].Height
           img.Width = Range("B2:B6").Width
      Sheets("feuil1").Range("D3") = Sheets("feuil2").Cells(I, 2)
      Sheets("feuil1").Range("F3") = Sheets("feuil2").Cells(I, 3)
            Application.Wait Time + TimeSerial(0, 0, 1)
            If I = nbLignes Then
                I = 0
            End If
        Next I
    End Sub
    Mais malheureusement aucun des deux fonctionnent. J'espère obtenir de l'aide.

    Bonne soirée tout le monde.

    Vincent

  2. #2
    Membre émérite Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Par défaut
    Bonjour,

    Qu'entend tu par "qui tourne en continu" ?

    Et il est de bon ton de mettre un

    après un Le second passe outre les erreurs, donc s'il y en a, il saute simplement la ligne, ce qui n'est pas évident pour les détecter

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut
    Bonjour Nico Chg,

    Qu'entend tu par "qui tourne en continu" ?
    Ben la macro tourne tout le temps jusqu'à l'appuie des touches Ctrl + Attn.

    J'ai bien rajouter .

    Merci d'avance,

    Vincent

  4. #4
    Membre émérite Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Par défaut
    Ah oui, au temps pour moi, j'avais lu ton code en diagonal, et effectivement, cette macro tourne en continu.

    Cependant, j'ai des doutes sur la faisabilité de ta demande, car pour moi, il faudrait interrompre la macro qui tourne en continu pour pouvoir en lancer une autre.

    Je vais donc laisser le soin aux experts de te répondre, je ne connais pas du tout la réponse

    Bonne chance !

  5. #5
    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,

    ben dans une boucle FOR il ne faut pas toucher à l'index ( ton I) c'est ta boucle for qui doit le traiter rien d'autre...


    à bannir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     If I = nbLignes Then
                I = 0
            End If

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Par défaut
    Merci pour vos réponses.

    bbil, comment faire alors?
    Et pendant cette macro est possible de copier coller des données d'un autre classeur?


    Vincent.

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

Discussions similaires

  1. [XL-2003] Macro Copier/Coller données Excel vers document Word avec Signets
    Par Julien91080 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 22/05/2013, 12h28
  2. [XL-2010] Rechercher Copier coller en boucle - Débutant macro
    Par zuzu94 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/03/2013, 11h18
  3. [XL-2003] Copier/Coller cellules visibles par macro
    Par Nikodemus dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/11/2011, 16h58
  4. copier coller données d'une feuille à une autre
    Par Caps corp dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/01/2008, 09h23

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