Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

ripetere macro ogni riga

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

ripetere macro ogni riga

Postdi orsobl » 28/10/15 18:04

Ciao a tutti,
sono novello di macro e programmazione e mi trovo ora a dover risolvere questo problema.
Magari è banale, ma non ne esco.
Avrei la necessità di far eseguire un calcolo al risolutore per circa 3000 righe.
Il calcolo nella singola riga torna. Ho registrato la macro che mi minimizza una cella di questa riga i-esima, variando una cella della riga stessa (i).
Devo ora dire al programma di eseguire lo stesso calcolo per la riga sotto (i+1), logicamente prendendo la cella obbiettivo e la cella da variare della riga corrispondente (i+1).
Spero di essermi spiegato.

Questa è la macro che ho registrato.

Sub Macro()
'
' Macro Macro
'

'
SolverOk SetCell:="$N$2", MaxMinVal:=2, ValueOf:=0.84, ByChange:="$O$2", Engine _
:=1, EngineDesc:="GRG Nonlinear"
SolverOk SetCell:="$N$2", MaxMinVal:=2, ValueOf:=0.84, ByChange:="$O$2", Engine _
:=1, EngineDesc:="GRG Nonlinear"
SolverSolve
SolverOk SetCell:="$N$2", MaxMinVal:=2, ValueOf:=0.84, ByChange:="$O$2", Engine _
:=1, EngineDesc:="GRG Nonlinear"
End Sub

Grazie per l'aiuto.
Lorenzo
orsobl
Newbie
 
Post: 1
Iscritto il: 28/10/15 17:57

Sponsor
 

Re: ripetere macro ogni riga

Postdi Anthony47 » 29/10/15 00:35

Ciao orsobl, benvenuto nel forum
Ad esempio con questo loop
Codice: Seleziona tutto
Sub MacroSolv()
For I = 2 To 10
    solverreset
    SolverOk SetCell:=Cells(I, "N"), MaxMinVal:=3, ValueOf:=0.84, ByChange:=Cells(I, "O"), Engine _
        :=1, EngineDesc:="GRG Nonlinear"
    myres = SolverSolve(userfinish:=True)
    If myres <> 0 Then MsgBox ("Errore su riga " & I & vbCrLf & "Esito: " & myres)
Next I
End Sub
In caso di esito non Ok verra' riportato un messaggio con la riga in errore e l'esito dell'operazione; per decodificare questo codice, vedere l'help on line del vba alla voce "Funzione SolverSolve" (Valore restituito della funzione SolverSolve).

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "ripetere macro ogni riga":


Chi c’è in linea

Visitano il forum: Nessuno e 19 ospiti