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

Forcer formule dans une cellule

  • Initiateur de la discussion Initiateur de la discussion hindoussa
  • 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 !

H

hindoussa

Guest
Bonjour,

Je rencontre un problème en ce moment et j'aurais besoin de votre préciseuse aide:

Sur une cellule fixe A1: Si l'utilisateur appuis sur effacer, qu'on force une certaine formule à se remettre dedans.

Merci d'avance.
 
Re : Forcer formule dans une cellule

Bonjour
Très facile. Écrivez dans le module de la feuille une Worksheet_Change qui installe cette formule si on modifie la cellule.
Cordialement.
 
Re : Forcer formule dans une cellule

bonjour,

tu peux essayer :
Code:
Private Sub worksheet_SelectionChange(ByVal Target As Range)

If Not Application.Intersect([A1], Target) Is Nothing And Target = "" Then
        Target.FormulaR1C1 = "=2*5"
End If

End Sub

en remplaçant "2*5" par la formule que tu veux valider,
le seul soucis est qu'il faut cliquer sur la cellule A1 pour que la formule se mette dedans

après quelques essais:
Code:
Private Sub worksheet_SelectionChange(ByVal Target As Range)

If Application.Intersect([A1], Target) Is Nothing Then
    If [A1] = "" Then [A1].FormulaR1C1 = "=2*5"
End If

End Sub

devrait réaliser ce que tu as besoin
à+
 
Re : Forcer formule dans une cellule

Merci pour ton aide.
Ca marche bien comme tu l'as dis.

Par contre j'ai oublié de préciser, je force une formule assez spéciale (TM1)
Et ça fait des erreurs.
Pour être plus explicite ça ressemble à ça:
Range("Choix").FormulaR1C1 = "SUNM(Server&"dim_A";"";"")"

C'est peut être un problème de "" ?
 
Re : Forcer formule dans une cellule

Le mieux c'est d'enregistrer une nouvelle macro puis de revalider la formule telle qu'elle est au point et de la pomper dans la Worksheet_Change et non Worksheet_SelectionChange.
 
Re : Forcer formule dans une cellule

Bonjour

Dans le code de francedemo, à la place de =2*5, comment je modifie cette partie pour changer par la formule =G6. Donc par rapport à une cellule ?
j'ai essayé directement, mais ça m'affiche ='G6'.

Merci
 
Re : Forcer formule dans une cellule

G6 c'est du style A1, pas du style R1C1. Par rapport à la cellule A1 toujours ?
Formula = "=G6" équivaut à FormulaR1C1 = "=R[5]C[6]"
Formula = "=$G6" équivaut à FormulaR1C1 = "=R6C[6]"
Formula = "=G$6" équivaut à FormulaR1C1 = "=R[5]C7"
Formula = "=$G$6" équivaut à FormulaR1C1 = "=R6C7"
Mais le 3 1ers ne sont valables que pour la cellule A1. Les décalages entre crochet sont toujours par rapport à la cellule qui porte la formule.
 
Re : Forcer formule dans une cellule

Re

Non aucune des deux solutions ne marche !!
Avec "=G6" => dans la cellule ='G6'
Avec "=$G$6" => bug dans le code !

😕
 
Re : Forcer formule dans une cellule

Cette fois c'est bon ! Merci Dranred et francedemo.

Si je peux me permettre, pouvez-vous m'expliquer ce qu'est R1C1 ou me donner un lien pour une meilleure compréhension ?
 
Re : Forcer formule dans une cellule

R1C1 sont des référence en Rows et Column
relis le post #9 de Dranreb, il est très explicite !!!


je ne suis pas sur, perso, je comprends (par rapport à "A1") :
Formula = "=G6" équivaut à FormulaR1C1 = "=R[5]C[6]"
Formula = "=$G6" équivaut à FormulaR1C1 = "=R[6]C7"
Formula = "=G$6" équivaut à FormulaR1C1 = "=R6C[6]"
Formula = "=$G$6" équivaut à FormulaR1C1 = "=R6C7"

attendons Dranreb pour en savoir plus...
 
Dernière édition:
Re : Forcer formule dans une cellule

C'est qu'il me semble avoir presque tout dit.
Ah, non. Quand il n'y a pas de décalage il n'y a pas de crochet. RC désigne donc la cellule qui porte la formule. Pour une colonne entière il n'y a pas de R du tout et pour une ligne entière il n'y a pas de C.
A1 "G:G" équivaut à R1C1 "C[6]" s'il est mentionné dans une formule de la colonne A
A1 'G:G" équivaut à R1C1 "C" s'il est mentionné dans une formule de la colonne G
A1 "$G:$G" équivaut à R1C1 "C7"
A1 "6:6" équivaut à R1C1 = "R[5]" s'il est mentionné dans une formule de la ligne 1
A1 "6:6" équivaut à R1C1 = "R" s'il est mentionné dans une formule de la ligne 6
A1 "$6:$6" équivaut à R1C1 = "R6"
Le style R1C1 peut aussi être considéré comme la forme native du L1C1. Vous pouvez choisir d'afficher les entêtes de colonnes et vos formule en style L1C1.
Cordialement.
 
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
131
Réponses
5
Affichages
171
Réponses
16
Affichages
587
Réponses
4
Affichages
344
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…