B
Blafi
Guest
Bonjour à tous..,
J'ai écrit une petite macro qui m'aide à transformer des euros en francs ou l'inverse suivant ce que l'on choisit grace à une boite de dialogue.
Pour que cette macro marche, il faut sélectionner les cellules à droite des cellules dont on veut traduire le montant.
Si je mets cette macro dans un classeur banal (tel que celui joint), elle marche parfaitement.
Par contre si je mets cette macro (procédure, et boite de dialogue) dans mon classeur de macros personnelles (person.xls) qui s'ouvre automatiquement au lancement d'excel, à chaque fois que j'essaye de l'utiliser, j'obtiens une 'erreur 1004'.
Lorsque je demande le débogage, VBA me pointe la ligne située dans la boucle; à savoir celle qui introduit la formule dans les cellules :
cece.FormulaR1C1= '= Round(RC[-1]*6.55957,2)'
ou cece.FormulaR1C1= '= Round(RC[-1]/6.55957,2)'
On dirait que VBA refuse d'executer cette ligne alors qu'il le fait sans pb si ma macro est dans un autre classeur... De plus, je ne vois pas d'erreur dans cette ligne qui marche dans l'autre classeur...
Qui pourrait m'expliquer ce phénomène que je ne comprend pas..
je précise que j'utilise Excel et VBA XP de Office 11.
Merci d'avance à celui qui me donnera la solution... A bientôt.
J'ai écrit une petite macro qui m'aide à transformer des euros en francs ou l'inverse suivant ce que l'on choisit grace à une boite de dialogue.
Pour que cette macro marche, il faut sélectionner les cellules à droite des cellules dont on veut traduire le montant.
Si je mets cette macro dans un classeur banal (tel que celui joint), elle marche parfaitement.
Par contre si je mets cette macro (procédure, et boite de dialogue) dans mon classeur de macros personnelles (person.xls) qui s'ouvre automatiquement au lancement d'excel, à chaque fois que j'essaye de l'utiliser, j'obtiens une 'erreur 1004'.
Lorsque je demande le débogage, VBA me pointe la ligne située dans la boucle; à savoir celle qui introduit la formule dans les cellules :
cece.FormulaR1C1= '= Round(RC[-1]*6.55957,2)'
ou cece.FormulaR1C1= '= Round(RC[-1]/6.55957,2)'
On dirait que VBA refuse d'executer cette ligne alors qu'il le fait sans pb si ma macro est dans un autre classeur... De plus, je ne vois pas d'erreur dans cette ligne qui marche dans l'autre classeur...
Qui pourrait m'expliquer ce phénomène que je ne comprend pas..
je précise que j'utilise Excel et VBA XP de Office 11.
Merci d'avance à celui qui me donnera la solution... A bientôt.