VBA - insertion de formules

Yves -  
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je crée un fichier excel où il faut que j'insère de nombreuses formules ( 3 formules par jour de calendrier pour 6 ans). J'aimerai automatiser la création du fichier, pour des raison de gain de temps! Pourtant j'arrive pas à inserer dans une cellule le "=sheets(??).cells(??)/sheets(??).cells(??)".

Jutilise cells car c'est dans une triple boucle : exemple:

With Sheets(ii + 2).Cells(5 + jour + dd, 8 + decalage_droite)
.Formula = "=sheets(ii+2).cells(5 + jour + dd, 4 + decalage_droite).value/sheets(ii+2).cells(5 + jour + dd, 3 + decalage_droite).value"
End With

où dd, ii sont des élément de boucle de jours et années et la 3eme boucle est pour les années.

ceci me donne une erreur 1004. Je peux vous assurez que l'erreur ne vient pas de sheets(ii+2)!

Je tiens à répéter qu'il met important que cela INSERE la formule dans les cellules. Comme cela le fichier sera prêt à l utilisation par après et on peut mettre des valeurs dans les cases pour et ca calcul tout ce que cela doit tout seul.

Merci pour votre éventuelle aide

A voir également:

1 réponse

gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
Bonjour,

Je peux vous assurez que l'erreur ne vient pas de sheets(ii+2)!
et pourtant c'est bien le cas !
Ce que tu mets dans 'formula' n'a rien à voir avec une formule excel cohérente.
Pour que l'instruction puisse s'exécuter il te faut une formule du style :
=Feuil1!A1/Feuil2!A1
ou dans ton cas
"=" & sheets(ii+2).name & "!" & chr(4 + decalage_droite + 64) & 5 + jour + dd & "/" etc...
0