Bonjour,
Je développe des fonctions sous VBA, donc le but est de créer un fichier de calcul sous Excel, via des lignes qui contiennent des formules. Pour certaines de ces formules, je suis amenée à faire varier une variable i entre 1 et n. Le problème est que VBA écrit la formule dans les cellules excel en indiquant "i", au lieu de la valeur que doit prendre i dans la boucle for.
Y a-t-il un moyen pour que VBA fasse prendre à i les valeurs successives de 1 à n?
Un exemple simplifié ci-dessous:
For i = 1 To 10
count = AddRow(count, "=i", nbcol)
Next i
Dans cette exemple précis, la fonction AddRow ajoute à la plage de cellule située sur la ligne n°"count",
la formule "=i" (entre les colonnes A et n°"nbcol"). Or Excel ne connaît pas cette variable i. Je voudrais qu'en ligne 1, la formule soit "=1", en ligne 2, la formule soit "=2", etc...
Y a-t-il une syntaxe particulière à respecter? Ou faut-il utiliser une autre propriété que .formula dans le code de la fonction "AddRow"?
D'avance merci pour votre aide.
Je développe des fonctions sous VBA, donc le but est de créer un fichier de calcul sous Excel, via des lignes qui contiennent des formules. Pour certaines de ces formules, je suis amenée à faire varier une variable i entre 1 et n. Le problème est que VBA écrit la formule dans les cellules excel en indiquant "i", au lieu de la valeur que doit prendre i dans la boucle for.
Y a-t-il un moyen pour que VBA fasse prendre à i les valeurs successives de 1 à n?
Un exemple simplifié ci-dessous:
For i = 1 To 10
count = AddRow(count, "=i", nbcol)
Next i
Dans cette exemple précis, la fonction AddRow ajoute à la plage de cellule située sur la ligne n°"count",
la formule "=i" (entre les colonnes A et n°"nbcol"). Or Excel ne connaît pas cette variable i. Je voudrais qu'en ligne 1, la formule soit "=1", en ligne 2, la formule soit "=2", etc...
Y a-t-il une syntaxe particulière à respecter? Ou faut-il utiliser une autre propriété que .formula dans le code de la fonction "AddRow"?
D'avance merci pour votre aide.