Excel Macro deCalcul puis copie des résultats
Résolu
rhad
-
rhad -
rhad -
Bonjour,
J'ai réalisé une feuille de calcul plutôt complexe qui utilise le solveur pour donner les résultats.
Cependant, je ne peux faire les calculs que pour un jeu de paramètre à la fois.
Aussi, sur une autre feuille, j'ai mis les paramètres en colonne, j'ai fais une macro qui va copier les paramètres dans la feuille de résolution et qui doit me retourner les résultats en copie avant de passer à la colonne suivante. C'est là que je bloque. Comment faire pour qu'Excel copie les paramètres de la colonne A dans le solveur avant de me copier les résultats du calcul A puis passer à la colonne B pour calcul B etc
Si quelqu'un a une idée, je suis preneur!
Bonne journée,
rhad
J'ai réalisé une feuille de calcul plutôt complexe qui utilise le solveur pour donner les résultats.
Cependant, je ne peux faire les calculs que pour un jeu de paramètre à la fois.
Aussi, sur une autre feuille, j'ai mis les paramètres en colonne, j'ai fais une macro qui va copier les paramètres dans la feuille de résolution et qui doit me retourner les résultats en copie avant de passer à la colonne suivante. C'est là que je bloque. Comment faire pour qu'Excel copie les paramètres de la colonne A dans le solveur avant de me copier les résultats du calcul A puis passer à la colonne B pour calcul B etc
Si quelqu'un a une idée, je suis preneur!
Bonne journée,
rhad
A voir également:
- Excel Macro deCalcul puis copie des résultats
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Copie cachée - Guide
- Resultats foot - Télécharger - Vie quotidienne
- Word et excel gratuit - Guide
2 réponses
Bonsoir,
Pour avoir toutes les fonctions s'y rapportant, dans l'aide VBA fais une recherche sur : solver
A cette adresse un exemple de solver en VBA.
Pour copier tes valeurs c'est :
cellule destination = cellule source
ex:
Feuil1.[C3]=Feuil2.[B2]
eric
Pour avoir toutes les fonctions s'y rapportant, dans l'aide VBA fais une recherche sur : solver
A cette adresse un exemple de solver en VBA.
Pour copier tes valeurs c'est :
cellule destination = cellule source
ex:
Feuil1.[C3]=Feuil2.[B2]
eric
On s'est mal compris. Le solver fonctionne. Mon problème c'est la copie avec incrémentation d'une colonne par cas.
Ex :
Pour certains paramètres, mon solver retourne des résultats :
SOLVER Xp1 Xp2 Xp3 -> Xr1 Xr2 Xr3
Afin d'éviter de mieux visualiser les variations, j'ai une feuille comme suit :
!A ! B ! C !
!Ap1 ! Bp1 ! Cp1 !
!Ap2 ! Bp2 ! Cp2 !
!Ap3 ! Bp3 ! Cp3 !
Là je voudrais faire une macro qui va copier les paramètres de A dans le solver, le faire tourner et ensuite copier les résultats en dessous des paramètres de A avant de passer à B puis C...
Ex :
Pour certains paramètres, mon solver retourne des résultats :
SOLVER Xp1 Xp2 Xp3 -> Xr1 Xr2 Xr3
Afin d'éviter de mieux visualiser les variations, j'ai une feuille comme suit :
!A ! B ! C !
!Ap1 ! Bp1 ! Cp1 !
!Ap2 ! Bp2 ! Cp2 !
!Ap3 ! Bp3 ! Cp3 !
Là je voudrais faire une macro qui va copier les paramètres de A dans le solver, le faire tourner et ensuite copier les résultats en dessous des paramètres de A avant de passer à B puis C...
Ah, ok
Dans ce cas :
te copie successivement les lignes 1 à 3 de chaque colonne de Feuil2 dans la colonne A de Feuil1, puis te ramene la valeur en A4 de Feuil1 dans la colonne concernée en Feuil2 ligne 4.
eric
Dans ce cas :
Sub test() Dim sh1 As Worksheet, sh2 As Worksheet, col As Long Set sh1 = Worksheets("Feuil1") Set sh2 = Worksheets("Feuil2") For col = 1 To sh2.[A1].End(xlToRight).Column ' copier 3 valeurs de Feuil2 en Feuil1 sh1.Range("A1:A3") = sh2.Cells(1, col).Resize(3, 1).Value ' là tu mets les instructions qui vont bien pour le solveur ' ' copier 1 valeur de Feuil1 en Feuil2 sh2.Cells(4, col) = sh1.[A4] Next col End Sub
te copie successivement les lignes 1 à 3 de chaque colonne de Feuil2 dans la colonne A de Feuil1, puis te ramene la valeur en A4 de Feuil1 dans la colonne concernée en Feuil2 ligne 4.
eric