XL 2013 VBA Boucle FormulaR1C1

Mah

XLDnaute Nouveau
Bonjour,

Je débute en programmation VBA et je rencontre un problème.
Je veux faire une boucle avec FormulaR1C1 mais lorsque je code il me dit "erreur de syntaxe". Je cherche désespéramment une solution, j'ai fais tous les forums possibles mais je ne trouve pas.

Voici mon code :

Code:
    Sub Equation()

    Dim i As Integer
    Dim LastLig As Long
   
    LastLig = Range("C1").End(xlDown).Row     

    
    
    For i = 2 To LastLig   
       
    Range("E" & i).FormulaR1C1 = "=SUM(SQRT((R[" & i & "]C[3]-R[" & i & "]C[1])^2+(R[" & i & "]C[4]-R[" & i & "]C[2])^2)),SQRT((R[" & i & "]C[3]-R[" & i & +1"]C[1])^2+(R[" & i & "]C[4]-R[" & i & +1"]C[2])^2), SQRT((R[" & i & "]C[3]-R[" & i & +2"]C[1])^2+(R[ " & i & "]C[4]-R[" & i & +2"]C[2])^2)))"
    
    
      
    Next
    
End Sub
 

gosselien

XLDnaute Barbatruc
Re : VBA Boucle FormulaR1C1

Bonjour,

Pas sûr de savoir t'aider mais....

déjà , fais un test sur: LastLig = Range("C1").End(xlDown).Row et regarde ce qui est répondu en mettant la souris dessus :)

tu commences fort pour un début :) :)

tu n'as pas la formule de feuille excel pour voir ?
 
Dernière édition:

Mah

XLDnaute Nouveau
Re : VBA Boucle FormulaR1C1

C'est un projet que j'ai pour mon école d'ingénieur. C'est basé sur le problème Opaque Forest, en gros une minimisation de trajet.

Pour la feuille excel c'est ça :

C'est un peu brouillon, j'ai commencé il y a quelques semaines seulement
 

Pièces jointes

  • P3.xlsm
    39 KB · Affichages: 48

Mah

XLDnaute Nouveau
Re : VBA Boucle FormulaR1C1

Pour ce qui est de la formule donnée par excel c'est ça :

ActiveCell.FormulaR1C1 = "=SUM(SQRT((R[2]C[3]-R[2]C[1])^2+(R[2]C[4]-R[2]C[2])^2)),SQRT((R[2]C[3]-R[3]C[1])^2+(R[2]C[4]-R[3]C[2])^2), SQRT((R[2]C[3]-R[4]C[1])^2+(R[2]C[4]-R[4]C[2])^2)))"

Sans indice variable ça marche très bien, mais dès que je veux faire une boucle il me dit "erreur de syntaxe"
 

JCGL

XLDnaute Barbatruc
Re : VBA Boucle FormulaR1C1

Bonjour à tous,

Peux-tu essayer ceci :
Code:
Cells(i, 5).Formula = "=SUM(SQRT((RC[-2]-RC[-4])^2+(RC[-1]-RC[-3])^2),SQRT((RC[-2]-R[1]C[-4])^2+(RC[-1]-R[1]C[-3])^2),SQRT((RC[-2]-R[2]C[-4])^2+(R[1]C[-1]-R[2]C[-3])^2))"

A+ à tous
 

Dranreb

XLDnaute Barbatruc
Re : VBA Boucle FormulaR1C1

Bonsoir.

Personnellement pour présenter une formule ou construire la FormulaR1C1 correspondante à l'intention d'un demandeur, je la mets au point dans Excel et j'affiche cet UserForm. Il envoie ce qu'il montre dans le presse papier, je n'ai plus qu'à coller dans ma réponse. C'est très pratique.
 

Pièces jointes

  • AuditCell.xlsm
    22.3 KB · Affichages: 56

Discussions similaires

Réponses
5
Affichages
180
Réponses
22
Affichages
759

Statistiques des forums

Discussions
312 185
Messages
2 086 014
Membres
103 093
dernier inscrit
Molinari