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 :

[Excel] selection et copier-coller de cellule sans activer les sheets


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 17
    Points : 10
    Points
    10
    Par défaut [Excel] selection et copier-coller de cellule sans activer les sheets
    Bonjour,

    J'aimerai vous soumettre un petit problème que je n'arrive pas à résoudre. C'est d'autant plus énervant que je suis sûr que c'est quelque chose de simple à mettre en oeuvre.
    Voici mon problème
    J'ai un classeur W1 qui posséde 10 Sheets.
    Je veux sélectionner des cellules des sheets 2 à 10 et les copier dans la sheet 1. Je ne veux pas bufferiser l'ensemble. Le principe est je copie une cellule de la sheet 2 et je la colle dans la sheet 1 et je recommence (je copie une cellule de la sheet 2 (ou bien une autre sheet) et je la colle dans la sheet 1). Comme je fais plusieurs fois l'aller retour entre les différentes sheet j'ai une espéce de flicker sur ma appli.
    Donc ma question est : est-il possible de selectionner des cellules (et de copier le contenu) d'une sheet qui n'est pas activé (et/ou selectionné).
    En gros je voudrais que mon appli reste scotché sur la sheet 1 et que tout le travail de copier-coller ne soit pas visible.

    merci de votre aide
    NB : Je ne peux pas vous fournir mon code car il est resté sur mon PC pro

    A bientôt

  2. #2
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Mai 2006
    Messages
    542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Mai 2006
    Messages : 542
    Points : 712
    Points
    712
    Par défaut
    Bonsoir à tous

    Pour répondre à ta question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("a1").Value = Sheets("Feuil2").Range("a1").Value
    mais pour que tu restes "scotché" sur ta feuille 1 tu peux mettre au début de la macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.ScreenUpdating = False
    que tu repositionnes à true à la fin

    A+

    Eric

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    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
        'Copier une plage de cellules
        Workbooks("Liste.xls").Worksheets("feuil1").Range("B3:F3").Copy _
        destination:=Workbooks("Classeur1").Worksheets("Feuil1").Range("B3:F3")
     
        'Copier des colonnes
        Workbooks("Liste.xls").Worksheets("feuil1").Range("B:F").Copy _
        destination:=Workbooks("Classeur1").Worksheets("Feuil1").Range("B1")
        'ou
        Workbooks("Liste.xls").Worksheets("feuil1").Range("B:F").Copy _
        destination:=Workbooks("Classeur1").Worksheets("Feuil1").Range("C:G")
     
        'Copier les lignes
        Workbooks("Liste.xls").Worksheets("feuil1").Rows(5).Copy _
        destination:=Workbooks("Classeur1").Worksheets("Feuil1").Rows(6)
        'ou
        Workbooks("Liste.xls").Worksheets("feuil1").Rows("5:8").Copy _
        destination:=Workbooks("Classeur1").Worksheets("Feuil1").Rows("9:12")
        'ou
        Workbooks("Liste.xls").Worksheets("feuil1").Rows(5).Copy
        Workbooks("Classeur1").Worksheets("Feuil1").Rows("67:67").Insert Shift:=xlDown
    Tu pourras te débrouiller avec ça ?

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 17
    Points : 10
    Points
    10
    Par défaut
    merci a vous... Je vais essayer tout ça dés que possible.

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    J'ai oublié de confirmer la solution d'edelweiss pour "masquer" les sauts de pages à l'écran. Mais autant que possible, évite les select et activate qui alourdissent et ralentissent le code

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 17
    Points : 10
    Points
    10
    Par défaut
    Merci pour les infos.
    Donc la fonction application.screenupdating = false correspond bien à ce que je veux faire.
    De plus je vais suivre le conseil de nettoyage du code des .activate et .select qui traine..
    NB: Je ne sais pas comment passer le fil en "Resolu". Est-ce à moi ou au modérateur de la passer?

    merci

  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
    Le bouton résolu est au bas de la discussion.

    Tu peux cliquer dessus, il ne te mordra pas.
    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!

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

Discussions similaires

  1. [XL-2010] comment copier coller des cellules sans prendre en compte les lignes cachées
    Par bboy-eazy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/09/2014, 15h20
  2. [Toutes versions] Copier/Coller cellules sans activer le classeur
    Par Aurianelm dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/04/2013, 11h39
  3. Réponses: 4
    Dernier message: 28/04/2011, 15h50
  4. Copier coller des cellules excel ?
    Par Angelssen dans le forum Windows Forms
    Réponses: 1
    Dernier message: 02/02/2010, 12h42
  5. Réponses: 5
    Dernier message: 14/02/2006, 14h32

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