Formula R1C1

Résolu/Fermé
Enito Messages postés 21 Date d'inscription jeudi 9 juillet 2009 Statut Membre Dernière intervention 22 février 2012 - 1 déc. 2011 à 04:39
Enito Messages postés 21 Date d'inscription jeudi 9 juillet 2009 Statut Membre Dernière intervention 22 février 2012 - 4 déc. 2011 à 20:53
Bonjour à tous,

Dans le cadre de la macro que je suis entrain d'écrire, j'ai un problème avec formulaR1C1.

Voici le code que j'ai entré,

ActiveCell.FormulaR1C1 = "=sum(R[-i]C:R[-1]C)"

À noter que le i est une variable qui provient d'une inputbox. Et je pense que c'est là que le problème se pose. Je souhaite utiliser la variable i car il n'y pas toujours le même nombre de lignes dans mon tableau. Est-ce que quelqu'un pourrait me soumettre une idée pour régler ça. À moins que le problème provienne de la déclaration de la variable.

Merci d'avance et Bonne journée,

Enito !

A voir également:

3 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
Modifié par Patrice33740 le 1/12/2011 à 07:40
ActiveCell.FormulaR1C1 = "=sum(R[-" & i & "]C:R[-1]C)"

Patrice
1
Enito Messages postés 21 Date d'inscription jeudi 9 juillet 2009 Statut Membre Dernière intervention 22 février 2012
1 déc. 2011 à 17:25
Merci patrick pour cette suggestion mais lorsque je tape ce code, j'obtiens une erreur de compilation disant attendu : fin d'instruction. Ça surligne en bleu a partir de signe de concatenation jusqu'au dernier guillemet. As-tu une idée de la raison pour laquelle j'obtiens ça.

Enito !
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
2 déc. 2011 à 16:10
Il n'y a pas de raison, tu as du te tromper !

Copies la ligne ci-dessus et colles la dans ton code.
0
Enito Messages postés 21 Date d'inscription jeudi 9 juillet 2009 Statut Membre Dernière intervention 22 février 2012
4 déc. 2011 à 20:53
Salut Patrice,

J'ai pris pour acquis que l'éditeur VBA allait automatiquement ajouter des espaces entre les guillemets et les signes de concaténations. Visiblement ce n'était pas le cas. Mais tout fonctionne bien maintenant en ayant ajouter les espaces.

Merci encore pour l'aide,

Enito !
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 1/12/2011 à 09:47
Bonjour,

à noter que tu as .formulalocal souvent plus pratique :

ActiveCell.FormulaLocal = "=SOMME(A1:A12)"
ou
ActiveCell.FormulaLocal = "=SOMME(A1:A" & i & ")"

eric
1
Enito Messages postés 21 Date d'inscription jeudi 9 juillet 2009 Statut Membre Dernière intervention 22 février 2012
1 déc. 2011 à 17:40
Merci Éric pour cette précision. Cependant, je ne pourrais pas utiliser cette formulation car les données ne sont jamais a la même place.

Bonne journee,

Enito
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
1 déc. 2011 à 18:23
Pour les parametres tu dois fabriquer ta chaine (comme pour .formulaR1C1), ce qui est interessant c'est que tu écris la fonction en français et les références en style A1...
eric
0
bonjour

un sujet qui pourrait apporter des idées:

http://www.commentcamarche.net/forum/affich-23745169-selection-d-une-cellule-selon-indice-sous-vba

bonne suite
1