Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Changer le code d'une macro par une saisie de cellule

  • Initiateur de la discussion Initiateur de la discussion Berg1664
  • Date de début Date de début

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 !

Berg1664

XLDnaute Occasionnel
Bonjour,

J'aimerais que le contenu du code d'une macro se modifie automatiquement en fonction de la saisie qui sera faite dans la cellule d'une feuille, il faudrait en fait que le code utilisé fasse référence au contenu de cette cellule, mais je suis bloqué, je ne sais plus faire .

Un exemple pour mieux me faire comprendre en pièce jointe

Merci pour votre aide

Cordialement
 

Pièces jointes

Re : Changer le code d'une macro par une saisie de cellule

Salut Berg1664,

Pourquoi ne pas faire plus simple et tester la valeur saisie 😕

Si la valeur est "Raymond", la prochaine sera "Lucien"

Que veux-tu faire exactement ?

A+
 
Re : Changer le code d'une macro par une saisie de cellule

Bonjour Berg1664:
La cellule active prendra la valeur entrée en F4

Code:
Sub Raymond()
    ActiveCell.Value = Range("F4")    
End Sub

A bientôt

[Edition] Hello Bruno🙂 Bon retour?😀 Sans oublier Gaël😀 C'est le week-end qui se prolonge..............................
 
Dernière modification par un modérateur:
Re : Changer le code d'une macro par une saisie de cellule

Bonjour Berg1664, Bonjour Bruno,

ça me paraît aussi un peu tordu. Si tu y tiens absolument, il n'est pas nécessaire de modifier le code de la macro, tu peux écrire simplement:

Code:
ActiveCell.Value = Cells(4, 6).Value

@+

Gael

Et salut G... euh Hasco, je ne t'avais pas vu et ton code est encore plus simple! J'espère que votre retour à tous les 2 s'est bien passé, et ce doit être le cas puisque vous êtes déjà sur XLD.

@+

Gael
 
Merci mais cela ne répond pas à ma question, je souhaite savoir si on peut changer le code de la macro par une saisie dans une cellule.

Dans l'exemple que j'ai utilisé ce n'est pas l'affichage en F4 qui m'intéresse in fine mais le moyen d'y parvenir par le changement du code de la macro

Afin de réutiliser cette possibilité pour d'autres macro

L idéal serait que la formule fasse référence à une cellule

Un truc du genre ActiveCell.FormulaR1C1 = " sheets ("nom de la feuille") contenu de la cellule F4).Select

Ce n'est peut être pas possible , en tous cas merci beaucoup
 
Re : Changer le code d'une macro par une saisie de cellule

Re,

Dans ce cas, tu peux écrire:

Code:
ActiveCell.FormulaR1C1 = "=R4C6"

    ActiveCell.FormulaR1C1 = "=R[-10]C2"

Dans le premier cas, c'est l'équivalent de =$F$4

Dans le deuxième cas, c'est en mode relatif, 10 lignes au-dessus et 2 colonnes à droite.

Si cela ne réponds toujours pas à ta question, il est aussi possible de modifier par macro le code d'une autre macro, mais c'est plus délicat.

@+

Gael
 
Re : Changer le code d'une macro par une saisie de cellule

Le code, ActiveCell.FormulaR1C1 = "=R4C6" me convient et fonctionne , mais j'aimerais appeler la cellule d'une autre feuille, comment faire ?

Merci Gael et vous tous
 
Re : Changer le code d'une macro par une saisie de cellule

Re,

Tu rajoutes simplement le nom de la feuille comme dans une formule:

Code:
ActiveCell.FormulaR1C1 = "=Feuil3!R4C6"

Pour la saisie des formules par macro, utilises l'enregistreur de macro:

Tu fais macro - nouvelle macro
tu tapes la formule souhaitée dans une cellule
puis tu arrêtes l'enregistrement et tu regardes le résultat.

Pour les formules complexes, c'est vraiment très simple et efficace.

@+

Gael
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…