Bonjour,
J'ai une formule qui fait plus de 1024 caractères dans mon code VBA, d'où le message d'erreur suivant lorsque je lance ma macro : Erreur d'exécution '7': Mémoire insuffisante.
Voici ma formule :
Et voici ce que j'ai essayé de faire, sans succès (je suis un débutant), pour ne pas dépasser les 1024 caractères : utiliser des variables pour faire le calcul par étapes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Range("C6").Value = "=(fishkill_pcm_high!R6C3-(1+fishkill_pcm_high!R7C3*fishkill_pcm_high!R7C3*0.1532*0.1532)*(1.04*(1+(1.88E-08)*(1/(2.50E-07+fishkill_pcm_high!R9C3)-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+fishkill_pcm_high!R9C3)*(2.50E-07+fishkill_pcm_high!R9C3))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+fishkill_pcm_high!R8C3)-1/(9.95E-06)))+2*(2.59E-02))-fishkill_pcm_high!R7C3*SQRT(1.04*(1+(1.88E-08)*(1/(2.50E-07+fishkill_pcm_high!R9C3)-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+fishkill_pcm_high!R9C3)*(2.50E-07+fishkill_pcm_high!R9C3))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+fishkill_pcm_high!R8C3)-1/(9.95E-06)))+2*(2.59E-02))) - " & _ "(0.58-(1+0.35*0.35*0.1532*0.1532)*(1.04*(1+(1.88E-08)*(1/(2.50E-07+(-6E-08))-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+(-6E-08))*(2.50E-07+(-6E-08)))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+0)-1/(9.95E-06)))+2*(2.59E-02))-0.35*SQRT(1.04*(1+(1.88E-08)*(1/(2.50E-07+(-6E-08))-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+(-6E-08))*(2.50E-07+(-6E-08)))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+0)-1/(9.95E-06)))+2*(2.59E-02)))"
Quelqu'un voit-il une solution à mon problème (à part renommer la feuille où je prend les données avec un nom plus court) ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim result1, result2 result1 = "=(fishkill_pcm_high!R6C3-(1+fishkill_pcm_high!R7C3*fishkill_pcm_high!R7C3*0.1532*0.1532)*(1.04*(1+(1.88E-08)*(1/(2.50E-07+fishkill_pcm_high!R9C3)-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+fishkill_pcm_high!R9C3)*(2.50E-07+fishkill_pcm_high!R9C3))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+fishkill_pcm_high!R8C3)-1/(9.95E-06)))+2*(2.59E-02))-fishkill_pcm_high!R7C3*SQRT(1.04*(1+(1.88E-08)*(1/(2.50E-07+fishkill_pcm_high!R9C3)-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+fishkill_pcm_high!R9C3)*(2.50E-07+fishkill_pcm_high!R9C3))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+fishkill_pcm_high!R8C3)-1/(9.95E-06)))+2*(2.59E-02)))" result2 = "=(0.58-(1+0.35*0.35*0.1532*0.1532)*(1.04*(1+(1.88E-08)*(1/(2.50E-07+(-6E-08))-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+(-6E-08))*(2.50E-07+(-6E-08)))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+0)-1/(9.95E-06)))+2*(2.59E-02))-0.35*SQRT(1.04*(1+(1.88E-08)*(1/(2.50E-07+(-6E-08))-1/(1.77E-07))+(1.09E-15)*(1/((2.50E-07+(-6E-08))*(2.50E-07+(-6E-08)))-1/((1.77E-07)*(1.77E-07))))*(1+(-6.98E-09)*(1/(1E-05+0)-1/(9.95E-06)))+2*(2.59E-02)))" Range("C6").Value = "=result1 - result2"
D'avance merci pour votre aide.
Partager