Amélioration d'une macro VBA Excel

corate92

XLDnaute Junior
Bonjour le forum!

J'ai voulu faire une macro me permettant de copier sur un fichier 1 une valeur (obtenue grâce à une fonction), et de coller cette même valeur dans un fichier 2.

Jusqu'ici pas de problème... :eek:

Grâce à notre fameux enregistreur de macro avec un collage spécial, j'obtiens le code suivant:

Code:
Sub copie()
'
'  Macro enregistrée le 28/04/2008
'
    Range("F3").Select
    Selection.Copy
    Windows("Fichier 2").Activate
    Worksheets("Feuille 1").Activate
    Range("A65536").End(xlUp).Offset(1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    
End Sub


J'aimerais améliorer ma macro, afin d'éviter les "activate"....
Surtout que j'ai plusieurs cellules à copier à chaque fois avec un collage spécial, donc si cela pouvait accélérer l'éxécution de la macro, ça serait pas plus mal....

Qu'en pensez vous?

Merci à tous ceux qui contribuent à ce site... qui est vraiment une perle (surtout pour les novices en VBA comme moi :rolleyes:)

Bonne journée!
 

corate92

XLDnaute Junior
Re : Amélioration d'une macro VBA Excel

Hello Job75!

Merci bcp pour ta piste, toutefois ton code en l'état ne fonctionnait pas!
j'ai fait 1 petite modification


Code:
Sub copie()
Range("F3").Copy
Workbooks("Fichier 2").Sheets("Feuille 1").Range("A65536").End(xlUp).Offset(1).PasteSpecial xlPasteValues    
End Sub

et ça fonctionne!

Merci bcp!
 

job75

XLDnaute Barbatruc
Re : Amélioration d'une macro VBA Excel

Re
Il serait peut-être plus simple d'entrer directement la valeur de F3 dans la cellule concernée plutôt que Copier/Coller :
Code:
Sub entrer()
Workbooks("Fichier 2").Sheets("Feuille 1").Range("A65536").End(xlUp).Offset(1).Value = Range("F3").Value
End Sub
A+
 

Discussions similaires

Réponses
2
Affichages
1 K

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof