Se connecter avec
S'enregistrer | Connectez-vous

Transfer feuil2 vers feuil1

Dernière réponse : dans Programmation

Bonjour je suis plus qu'un nouveau sur excel et vba voila que j'ai un code a faire pour la suite de mon projet .

voila je vous explique ce que j'essai de faire depuis ce matin

j'ai un classeur excel qui a 2 feuilles disons feuil1 et feuil2
la feuil1 c'est ma feuille de destination et ma feuil2 c'est la feuille de départ

imaginons que j'ai une donné dans une cellule quelconque de feuil2 ex: en A1 et que je veux utiliser cette valeur dans ma formule sous vba pour avoir un résultat dans ma feuil1 a la cellule E2 par ex

voici ma formule f=(1+q) ou q est la valeur dans la cellule A1 de feuil2

comment je peu faire ça? svp
voici l'idée : Cells(2,5)=(1+q) ou q est dans feuil2

et plus généralement comment faire si je veux utiliser cette valeur dans une colonne ?
ex :la colonne D.
OU dans une ligne ?
pour la ligne : Cells(1,j)=(1+q) pour j=1 to 10 par ex
pour la colonne Cells(j,1)=(1+q) pour j=1 to 10 par ex

mieux encore
si j'ai q1 en A1,q2 en A2,.....,q10 en A10 (sur la premiere ligne de la feuil2)
dans ma feuil1 je veux ecrire un code sous vba qui me rempli la colonne A de la feuil1 a l'aide de la formule f=(1+q1), la colonne B avec la formule f=(1+q2),.....,et la colonne J avec la formule f=(1+q10)

For j=1 To 10
For i= 1 To 30
Cells(i,j)=(1+q(i)) ou q(i) est pris dans la feuil2 de mon classeur.
Next i
Next j

merci d'avance

Autres pages sur : transfer feuil2 vers feuil1

Lassé par la pub ? Créez un compte

Meilleure solution

Expert Programmation

:pfff:  Vous vous em[:zeb:5]rder pour rien les gars. Pourquoi utiliser FormulaR1C1 quand je vous dis d'utiliser Formula ?
Elbosador, ce que tu proposes ne sera pas dynamique.

Aidons Dianbobo à trouver lui-même la solution. Il ne manque pratiquement plus rien.

Dianbobo, dans Excel, écris la formule que tu veux avoir, dans une seule cellule, disons F1. Et ce sans variable tx, sans chichi. Juste le nom d'une cellule de la feuille 2 dans la formule de la cellule F1 de la feuille1.
Tu l'as ?

Maintenant, en VB, exécute ce génial ( :sarcastic:  ) programme :
  1. Sub TesteFormuleF1
  2. MsgBox Range("F1").Formula
  3. End Sub
(Range("F1") et Cells(1, 6) sont équivalents).

Tu vois maintenant quoi faire ?
Expert Programmation

Bonjour,

La propriété Cells renvoie un objet Range qui contient de nombreuses propriétés. Je t'invite à consulter l'aide en ligne d'Excel/VBA sur la propriété Formula.

bonjour


:)  Merci je vais bien consulter l'aide en ligne
mais mon veritable probleme c'est de savoir comment definir lel contenu d'une cellule dans mon code vba lorsque cette valeur a eté trouvée a partir d'une formule et quelle se trouve dans une feuille
j'ai essayé la chose suivante mais ça ne marche pas :

:)  Dim Tx
Tx = Workbooks("Théorie du Projet").Sheets("Feuil2").Range("E15").Value

pour ensuite evaluer f=(1+Tx) dans une cellule d'ne autre feuille

merci de votre aide
Expert Programmation

Merci de présenter tes morceaux de programme entre balise [code][/code], conformément au règlement.

-------------------------------------------

M'enfin, qu'est ce que ce f= ?
Faut-il que lorsque Feuil2!E15 change, les autres cellules changent aussi ?

oui en effet Feuil2!E15 est calculé à partir d'une formule si on change sa valeur il doit y avoir un impact sur les valeur de l'autre feuille (feuil1)
j'ai ecrit f just pour indiquer que je calcule (1+Tx) , f c'est ma cellule dans laquelle je doit avoir le resultat .

voici le bout du code pour mieux comprendre ex: faire
Cells(5,5)=(1+Tx) ou Tx=Feuil2!E15

merci de votre aide


voila ce que j'ai ecrit .si tu peus mieux m'indiquer pour faire la maipulation resolu!!
  1. sub calcul()
  2.  
  3. Dim resultat as double
  4. Dim i as long
  5. resultat=0
  6.  
  7. For i = 0 To 187
  8. resultat = resultat + Worksheets("Note").Cells(i + 4, 4).Value * _
  9. Worksheets("valobligTF").Cells(i + 77, 10).Value
  10.  
  11. Next i
  12. resultat = (resultat / Worksheets("Note").Range("D193").Value)
  13. Worksheets("Note").Range("H4").Value = resultat
  14.  
  15. end sub
Lassé par la pub ? Créez un compte