VBA - insertion de formules

Fermé
Yves - 28 juil. 2016 à 20:50
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 28 juil. 2016 à 22:02
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 lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 714
28 juil. 2016 à 22:02
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