Macro pour Coller Formule

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Daylight

XLDnaute Nouveau
Bonjour,
Pour gagner du temps j'aimerais faire une macro me permettant de coller la formule, au lieu de passer par :
- Edition
- Collage spécial
- Formule
- OK
- Echap (pour que le "Copier" sur la cellule d'origine ne reste pas actif)

Comme ma cellule de destination est aléatoire, je pars du principe qu'avant de lancer cette macro je copie la cellule d'origine où se trouve la formule, et je me positionne sur la cellule de destination de cette formule.

Ensuite je crée ma macro en faisant les 5 étapes mentionnées ci-dessus.
Mais lorsque je teste la macro, j'obtiens un message d'erreur Visual Basic :

Erreur d'exécution '1004'
La méthode PasteSpecial de la classe Range a échoué.

Et si je clique sur déboguage, j'obtiens ça :

Sub Coller_formule()
'
' Coller_formule Macro
' Macro enregistrée le 21/07/2011 par SESA190491
'

'
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub


Est-ce que quelqu'un saurait d'où vient mon erreur ?
Auriez-vous une idée pour cela ?
Mon collègue est certain d'avoir vu cette action par macro, donc il doit bien y avoir une solution ! 🙂

Merci de l'aide que vous pourrez m'apporter !
DL
 
Re : Macro pour Coller Formule

Bonjour,

Il te manque la cellule que tu veux copier
et La cellule où tu veux copier
qui peuvent être sous forme de variable

Range("C3").Select
Selection.Copy
Range("A10").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

a+
 
Re : Macro pour Coller Formule

La cellule que je veux copier, je fais un 'Copier' dessus, puis je me positionne sur ma cellule de destination AVANT de lancer ma macro ! Donc il ne devrait pas y avoir de problème !?

Les positions de ma cellule d'origine et de destination étant variables, je ne peux pas les intégrer dans la macro, n'est-ce pas ?

Ah ! Tu veux dire qu'on peux inclure des variables dans la macro ? (désolé, je ne connais pas le langage VB et l'étendue des possibilités des macros)

Ok, je vais essayer de coller ta proposition dans la macro voir ce que ça donne, merci !
 
Re : Macro pour Coller Formule

Ca ne fonctionne pas. Si j'en crois ton texte et le résultat que je vois, la macro va simplement récupérer la formule en C3 et la colle en A10, mais la macro ne me laisse pas la possibilité de choisir ma valeur d'origine et ma valeur de destination !!!
 
Re : Macro pour Coller Formule

Yop,
Une fois que tu as copié la cellule de départ :
Code:
Sub Macro1()
    ActiveCell.Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
End Sub
Il y a toujours moyen d'affecter des touches de raccourcis a cette Macro
 
Re : Macro pour Coller Formule

Ca ne fonctionne pas non plus... 🙁

Je l'ai collé ainsi, est-ce correct ?

Sub Coller_formule()
ActiveCell.Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub
 
Re : Macro pour Coller Formule

Yop,

C'est une macro. Ca va dans l'éditeur de macro. Pour ouvrir le VBE (Visual Basic Editor) tu fais ALT+F11.

Sinon comme je disais, il faut dans un premier temps faire la copie de la cellule (CTRL+C) avant de faire la macro.
 
Re : Macro pour Coller Formule

Bonjour à tous,
Je m'excuse de relancer ce fil, mais j'aimerais vraiment beaucoup pourvoir faire cette macro "Collage Spécial Formule"
Je m'en sers à longueur de temps, et je perds un temps fou à faire 4-5 clics à chaque fois !

J'ai essayé les suggestions mentionnées ci-dessus, mais sans succès. Encore une fois, je veux simplement que la macro fasse les cinq actions ci-dessous:
- Edition
- Collage spécial
- Formule
- OK
- Echap (pour que le "Copier" sur la cellule d'origine ne reste pas actif)

Est-ce que quelqu'un aurait trouvé la solution par hasard s'il vous plaît ?

Merci de l'aide que vous pourrez m'apporter !

Cordialement,
DL
 
Re : Macro pour Coller Formule

Bonjour à tous

Normalement c'est:

Sélection de la cellule à copier (Ctrl+c) puis sélectionne la cellule qui recevra la formule puis alt+e puis g puis u puis Enter.

Ce qui fait avec une macro dont tu détermines le raccourcis clavier pour la partie collage(ex ctrl+u):

Code:
Sub copie_formule()
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
End Sub

Donc: sélectionne la zone à copier (ctrl+c) puis sélectionne la zone à coller puis ctrl+u 🙂.

Ou en macro Excel4:

Code:
colleformule_u
=COLLAGE.SPECIAL(2;1;FAUX;FAUX)
=RETOUR()
 
Re : Macro pour Coller Formule

Salut MJ13, c'est bien ce que j'ai fait ! Et j'obtiens bien le même code que toi ! Seulement la macro ne marche pas !
Lorsque je la lance, j'obtiens toujours le même message d'erreur :

Erreur d'exécution '1004'
La méthode PasteSpecial de la classe Range a échoué.
 
Re : Macro pour Coller Formule

AAAAAAH !!!! Ca marche dans ton fichier, et quand je copie/colle ton code dans ma macro ça ne marche plus !!!!!!

Est-ce parce qu'il s'agit d'une macro sur mon classeur PERSO.xls ??? (pour que les macros soient disponibles sur tous les docs excel que j'ouvre)
 
Re : Macro pour Coller Formule

y aurait-il un moyen de copier ta macro sur mon PERSO.xls et donc la rendre disponible sur mon classeur de macros personnelles ??

Pour info, je viens d'essayer de créer cette macro dans un document normal (pas le PERSO.xls), et ça plante également... je ne comprends pas....


EDIT: je viens de trouver le moyen de la faire passer dans PERSO.xls avec Visual Basic, mais idem, je ne peux plus la faire fonctionner... que c'est frustrant...................... 😡
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
346
Retour