Macro copie de cellule

Résolu/Fermé
zertozerto Messages postés 34 Date d'inscription mardi 8 mars 2011 Statut Membre Dernière intervention 21 mars 2011 - 8 mars 2011 à 13:00
zertozerto Messages postés 34 Date d'inscription mardi 8 mars 2011 Statut Membre Dernière intervention 21 mars 2011 - 11 mars 2011 à 11:02
Bonjour,

tres simple

je souhaite copier une seule cellule d'une feuille dans une autre cellule d'une feuille voisine.

en macro biensur, pour Excel 2003

Merci d'avance



A voir également:

3 réponses

Bonjour,
Pour obtenir le code macro correspondant à une action donnée, il suffit de démarrer une macro, de démarrer l'enregistrement, de faire l'action puis d'arrêter l'enregistrement. Ensuite, une visite dans le code de la maccro enregistrée permet, avec modifications, d'obtenir l'action souhaitée en macro.

Ex:
Réaliser une macro qui remplace 55,6 par 56 dans toute la feuille.
Démarrer un enregistrement de macro, puis ctrl+R, écrire le remplacement dans les zones définies ( 55,6 et 56 ) puis remplacer tout.
Arrêter l'enregistrement. Accéder ensuite au code source de la macro puis faites les modifications que vous voulez.
Attention toutefois aux avertissements de sécurités.
1
rv83toulon Messages postés 68 Date d'inscription mercredi 2 mars 2011 Statut Membre Dernière intervention 25 avril 2013 15
8 mars 2011 à 13:44
Bonjour,
un exemple simple pour copier la cellule A1 de la Feuil1 vers la cellule B1 de la Feuil2:
Sub copier()
Sheets("Feuil1").Range("A1").Copy Sheets("Feuil2").Range("B1")
End Sub

Tu n'as plus qu'à changer les noms de feuilles et les cellules par rapport a tes besoins.
A+
0
zertozerto Messages postés 34 Date d'inscription mardi 8 mars 2011 Statut Membre Dernière intervention 21 mars 2011
8 mars 2011 à 14:27
Merci de l'astuce de l'enregistrement :)

j'ai intégré le code dans un bouton comme je voulais

    'Transfert des données
    Sheets("Sheet1").Select
    Range("A2").Select
    Selection.Copy
    Sheets("Sheet3").Select
    Range("E4").Select
    ActiveSheet.Paste


Merci
0
rv83toulon Messages postés 68 Date d'inscription mercredi 2 mars 2011 Statut Membre Dernière intervention 25 avril 2013 15
11 mars 2011 à 10:56
Bonjour,
Pour Info,le code donné par l'enregistreur de macro te donne une piste ce qui est très bienet lorsqu'on ne sait pas comment faire il faut s'en servir.
Toutefois on peux épurer ce code, par exemple ici, si tu souhaites faire la même opération plusieurs fois il faut éviter les ".select" qui ralentissent le code.
Tu peux simplifier toutes les lignes de ta macro en faisant ceci:
Sheets("Sheet1").Range("A2").Copy Sheets("Sheet3").Range("E4")

Cette ligne fait la même chose. Elle copie La cellule A2 de Sheet1 vers la cellule E4 de Sheet3.
Cordialement.
0
zertozerto Messages postés 34 Date d'inscription mardi 8 mars 2011 Statut Membre Dernière intervention 21 mars 2011
11 mars 2011 à 11:02
en effet le code est beaucoup plus leger de cette maniere.

On m'avait parlé de cette syntaxe mais je ne comprenais pas qu'il comprenait que la cellule E4 était celle de déstination sans avoir a rajouter Paste.

Merci rv83toulon
0