saisir dans une cellule une formule généré par programmation
3 réponses
Fabien Gouverneur
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans
une cellule quelconque choisi par rapport à nos besoins, une formule que
nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une
chaîne de caractères, puis on saisi :
DIM q as string
....
....
....
....
....
cells (x,y) = q
ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été
totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ?
Merci
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Elliac
Bonjour,
L'erreur 1004 est de type adresse. Vérifier du côté de Cells(x,y)
Camille
"Fabien Gouverneur" wrote:
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une chaîne de caractères, puis on saisi : DIM q as string ..... ..... ..... ..... ..... cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ? Merci
Bonjour,
L'erreur 1004 est de type adresse. Vérifier du côté de Cells(x,y)
Camille
"Fabien Gouverneur" wrote:
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans
une cellule quelconque choisi par rapport à nos besoins, une formule que
nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une
chaîne de caractères, puis on saisi :
DIM q as string
.....
.....
.....
.....
.....
cells (x,y) = q
ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été
totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ?
Merci
L'erreur 1004 est de type adresse. Vérifier du côté de Cells(x,y)
Camille
"Fabien Gouverneur" wrote:
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une chaîne de caractères, puis on saisi : DIM q as string ..... ..... ..... ..... ..... cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ? Merci
Daniel
Bonjour. Essaie : Cells(2, 2).FormulaLocal = q Toutefois, je ne sais pas pourquoi ton code ne fonctionne pas. Cordialement. Daniel "Fabien Gouverneur" a écrit dans le message de news: 4344dc9a$0$21304$
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une chaîne de caractères, puis on saisi : DIM q as string .... .... .... .... .... cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ? Merci
Bonjour.
Essaie :
Cells(2, 2).FormulaLocal = q
Toutefois, je ne sais pas pourquoi ton code ne fonctionne pas.
Cordialement.
Daniel
"Fabien Gouverneur" <agronomia@free.fr> a écrit dans le message de news:
4344dc9a$0$21304$626a54ce@news.free.fr...
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans
une cellule quelconque choisi par rapport à nos besoins, une formule que
nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme
d'une
chaîne de caractères, puis on saisi :
DIM q as string
....
....
....
....
....
cells (x,y) = q
ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a
été
totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ?
Merci
Bonjour. Essaie : Cells(2, 2).FormulaLocal = q Toutefois, je ne sais pas pourquoi ton code ne fonctionne pas. Cordialement. Daniel "Fabien Gouverneur" a écrit dans le message de news: 4344dc9a$0$21304$
Bonjour à tous !
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation.
On crée notre chaîne de caractère, comme on le souhaite sous la forme d'une chaîne de caractères, puis on saisi : DIM q as string .... .... .... .... .... cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
Est que l'un d'entre vous pourrais nous aider ? Merci
Modeste
Bonsour® Fabien Gouverneur wrote:
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation. cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères Le problème est que si on lance cette macro on obtient le message Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
de deux chose l'une : soit l'on veux exactement une formule : alors la syntaxe est : cells(x,y).FormulaLocal= q ou bien cells(x,y).formula=q dans ce cas la formule q doit respecter la forme US : Nom de fonction et separateur
soit l'on veux le résultat de la formule alors la syntaxe est : cells(x,y)= evaluate(q) dans ce cas la formule q doit respecter impérativement la forme US : Nom de fonction et separateur
dans l'exemple ci-dessus il y a une erreur la syntaxe de la fonction TEXTE est : TEXTE(valeur;format_texte) devrait donc etre dans ce cas : "=TEXTE($A42;""0"")" par ailleurs ce qui se trouve en cells(x,y) est un texte que excel doit interpreter il faut alors valider la cellule en appuyant sur "Entrer" ou forcer excel à faire cette evaluation mais dans ce cas il faut respecter la syntaxe US en résumé :
Sub Fabien() [A42] = Now letexte$ = "=TEXT(A42,""0"")" MsgBox letexte$, , "1ere façon Formule Syntaxe US, résultat texte" Cells(3, 4).Value = letexte$ Cells(3, 4).Value = Cells(3, 4)
-- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042
Bonsour®
Fabien Gouverneur wrote:
Avec un collègue de bureau nous tentons de créer une macro qui saisie
dans une cellule quelconque choisi par rapport à nos besoins, une
formule que nous avons créer de toutes pièces par programmation.
cells (x,y) = q
ou q est notre chaîne de caractères du type "=TEXTE($A42;0)",
celle-ci a été totalement construite par des traitements de chaîne de
caractères
Le problème est que si on lance cette macro on obtient le message
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
de deux chose l'une :
soit l'on veux exactement une formule :
alors la syntaxe est :
cells(x,y).FormulaLocal= q
ou bien
cells(x,y).formula=q dans ce cas la formule q doit respecter la forme US :
Nom de fonction et separateur
soit l'on veux le résultat de la formule
alors la syntaxe est : cells(x,y)= evaluate(q)
dans ce cas la formule q doit respecter impérativement la forme US : Nom de
fonction et separateur
dans l'exemple ci-dessus il y a une erreur
la syntaxe de la fonction TEXTE est :
TEXTE(valeur;format_texte)
devrait donc etre dans ce cas : "=TEXTE($A42;""0"")"
par ailleurs ce qui se trouve en cells(x,y) est un texte que excel doit
interpreter
il faut alors valider la cellule en appuyant sur "Entrer"
ou forcer excel à faire cette evaluation mais dans ce cas il faut respecter
la syntaxe US
en résumé :
Sub Fabien()
[A42] = Now
letexte$ = "=TEXT(A42,""0"")"
MsgBox letexte$, , "1ere façon Formule Syntaxe US, résultat texte"
Cells(3, 4).Value = letexte$
Cells(3, 4).Value = Cells(3, 4)
--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042
Avec un collègue de bureau nous tentons de créer une macro qui saisie dans une cellule quelconque choisi par rapport à nos besoins, une formule que nous avons créer de toutes pièces par programmation. cells (x,y) = q ou q est notre chaîne de caractères du type "=TEXTE($A42;0)", celle-ci a été totalement construite par des traitements de chaîne de caractères Le problème est que si on lance cette macro on obtient le message Erreur d'exécution '1004': Erreur définie par l'application ou par l'objet.
de deux chose l'une : soit l'on veux exactement une formule : alors la syntaxe est : cells(x,y).FormulaLocal= q ou bien cells(x,y).formula=q dans ce cas la formule q doit respecter la forme US : Nom de fonction et separateur
soit l'on veux le résultat de la formule alors la syntaxe est : cells(x,y)= evaluate(q) dans ce cas la formule q doit respecter impérativement la forme US : Nom de fonction et separateur
dans l'exemple ci-dessus il y a une erreur la syntaxe de la fonction TEXTE est : TEXTE(valeur;format_texte) devrait donc etre dans ce cas : "=TEXTE($A42;""0"")" par ailleurs ce qui se trouve en cells(x,y) est un texte que excel doit interpreter il faut alors valider la cellule en appuyant sur "Entrer" ou forcer excel à faire cette evaluation mais dans ce cas il faut respecter la syntaxe US en résumé :
Sub Fabien() [A42] = Now letexte$ = "=TEXT(A42,""0"")" MsgBox letexte$, , "1ere façon Formule Syntaxe US, résultat texte" Cells(3, 4).Value = letexte$ Cells(3, 4).Value = Cells(3, 4)
-- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042