incérer dans une Cellule une 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 !

zephir94

XLDnaute Impliqué
Bonsoir à tous,

Après des recherches sur le web ainsi que dans le Forum, ne trouvant pas réponse à mon problème j'ai besoin de vos lumières.

Je dois incérer dans une Cellule une formule.
L'écriture s'effectue bien mais me génère une erreur 1004 , j'ai essayé du coup d'enregistrer une macro pour voir le code proposé par Excel, mais lui aussi en pas à pas génère la même erreur !

Voici mon code :

Code:
Range("Z1").FormulaR1C1=" =SI(ESTERREUR(B$26/P$26)=VRAI;"";B$26/P$26) "

et l'enregistreur de macro
Code:
    Range("Z1").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(ISERROR(R26C[-24]/R26C[-10])=TRUE,"""",R26C[-24]/R26C[-10])"

J'ai fait pas mal de recherches sur Formula avant de poster mais je tourne en rond !
Merci par avance pour vos lumières
 
Dernière édition:
Re : incérer dans une Cellule une formule

Bonjour,

En évitant les espaces avant le signe égal de la formule, en doublant les guillemets intérieurs et en utilisant FormulaLocal:
Code:
Range("Z1").FormulaLocal="=SI(ESTERREUR(B$26/P$26)=VRAI;"""";B$26/P$26)"
Ou sans FormulaLocal:
Code:
Range("Z1").Formula="=IF(ISERROR(B$26/P$26)=TRUE,"""",B$26/P$26)"

Pas d'erreur
A+
 
Dernière modification par un modérateur:
Re : incérer dans une Cellule une formule

Merci à toi Hasco,

J'ai essayé la première et la deuxième solution mais hélas j'ai une erreur d'exécution 13 incompatibilité de type dans les deux cas

J'ai donc essayé dans une feuille vierge et là ça fonctionne qu'est-ce qui pourrait générer cette erreur ?
 
Dernière édition:
Re : incérer dans une Cellule une formule

Bonsoir à tous, Hasco 😉

zephir94
Pas d'erreur sur mon pc (j'ai raccourci ta formule au passage 😉)
Code:
Sub a()
Sheets(1).Range("Z1").FormulaLocal = "=SI(ESTERR(B26/P26);"""";B26/P26)"
End Sub

Sinon tu peux aussi faire comme ceci
Code:
Sub b()
On Error Resume Next
Range("Z1").Value = Range("B26") / Range("P26")
End Sub
 
Dernière édition:
Re : incérer dans une Cellule une formule

Re

zephir94
J'ai testé avant de poster 🙄
et je certifie donc: pas d'erreur sur mon PC 😉
Pas d'erreur non plus avec ceci.
Code:
Sub c()
[Z1].FormulaLocal = "=SIERREUR(B26/P26;"""")"
End Sub

Code:
Sub d()
On Error Resume Next
[Z1] = [B26] / [P26]
End Sub

Tu n'as répondu à ma question: As-tu vu la différence entre ta formule et ma formule ?
 
Re : incérer dans une Cellule une formule

Il est vrai que je suis très tenté par On Error Resume Next !
car je n'ai plus l'erreur de type 13 en l'utilisant mais bon je voudrais comprendre pourquoi !

Il n'y a plus vrai et tu as utilisé ESTERR, non ?

J'ai effectivement testé ta proposition dans une feuille vierge et ça fonctionne aussi chez moi mais dans la feuille où je dois l'implanter ça plante
 
Dernière édition:
Re : incérer dans une Cellule une formule

Oui ça conserve et je te remercie pour toute ton aide, le On Error Resume Next cache l'erreur de type 13 mais par contre ne m'explique pas pourquoi j'ai cette dernière dans ma page si je le retire ????
Alors que dans une feuille vierge de mon classeur ça fonctionne sans soucis, et pour tant la Cellule ou j'écris la Formule est bien en relation au niveau Format 😕
 
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
4
Affichages
498
Réponses
7
Affichages
652
Réponses
9
Affichages
851
Retour