Condividi tramite

Macro che fa schiacciare dei bottoni in sequenza presenti su un'altro foglio

Anonimo
2014-02-25T18:25:48+00:00

Salve a tutti,

Sono Andrea sono uno studente alle prime armi con VBA. Il mio problema è il seguente:

Il mio foglio excel ha in un foglio di nome "Calcoli Impianto" 4 bottoni a cui sono associati delle macro Solver che riporto:

Sub Gest_imp_calcoloO2()

'

' Gest_imp_calcoloO2 Macro

'

'

SolverOk SetCell:="$R$95", MaxMinVal:=3, ValueOf:=Range("$c$101").Value, ByChange:="$G$74", _

Engine:=1, EngineDesc:="GRG non lineare"

SolverSolve userfinish:=True

solverfinish keepfinal:=1

End Sub

Sub Gest_imp_PostComb()

'

' Gest_imp_PostComb Macro

'

'

SolverOk SetCell:="$H$170", MaxMinVal:=3, ValueOf:=0, ByChange:="$B$165", _

Engine:=1, EngineDesc:="GRG non lineare"

SolverSolve userfinish:=True

solverfinish keepfinal:=1

End Sub

Sub Gest_imp_TOutRotaryKiln()

'

' Gest_imp_TOutRotaryKiln Macro

'

'

SolverOk SetCell:="$G$187", MaxMinVal:=3, ValueOf:=0, ByChange:="$E$126", _

Engine:=1, EngineDesc:="GRG non lineare"

SolverSolve userfinish:=True

solverfinish keepfinal:=1

End Sub

Sub Gest_imp_energiaDispersa()

'

' Gest_imp_energiaDispersa Macro

'

SolverOk SetCell:="$h$184", MaxMinVal:=3, ValueOf:=0, ByChange:="$b$179", _

Engine:=1, EngineDesc:="GRG non lineare"

SolverSolve userfinish:=True

solverfinish keepfinal:=1

'

End Sub

Nel foglio precedente di nome "Gestione Impianto" ho creato un bottone che deve eseguire le precedenti macro in sequenza come se dovesse andare a cliccare via via sui bottoni dell'altro foglio "Calcoli Impianto"

Vi chiedo come potrei fare.

Vi ringrazio moltissimo

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

3 risposte

Ordina per: Più utili
  1. Anonimo
    2014-02-26T06:10:18+00:00

    Le macro sono in un modulo di codice standard, ma il problema è che richiamandole con "Call Macro1" non funzionano poiché fanno riferimento a celle che in quel foglio sono vuote e non fanno riferimento alle celle che sono nell'altro foglio come io vorrei.

    Leggi:

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2014-02-25T19:59:25+00:00

    Le macro sono in un modulo di codice standard, ma il problema è che richiamandole con "Call Macro1" non funzionano poiché fanno riferimento a celle che in quel foglio sono vuote e non fanno riferimento alle celle che sono nell'altro foglio come io vorrei.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2014-02-25T18:35:59+00:00

    Nel foglio precedente di nome "Gestione Impianto" ho creato un bottone che deve eseguire le precedenti macro in sequenza come se dovesse andare a cliccare via via sui bottoni dell'altro foglio "Calcoli Impianto"

    Vi chiedo come potrei fare.

    Vi ringrazio moltissimo

    Dove sono le tue macro? In un modulo di codice standard? Copia/incolla in un modulo standard:

    Public sub m()

        Call Macro1

        Call Macro2

        Call Macro3

        Call Macro4

    End Sub

    Dove sostituirai a Macro1, ecc. , i nomi in sequenza delle macro da eseguire.

    Quindi associa il tuo pulsante alla macro e/o assegna alla macro un tasto di scelta rapida, vedi il punto 5 qui:

    Se le macro da eseguire sono invece nel modulo di codice di un foglio (cosa che non si dovrebbe fare):

    Public sub m()

        Call NomeFoglio.Macro1

        Call NomeFoglio.Macro2

        Call NomeFoglio.Macro3

        Call NomeFoglio.Macro4

    End Sub

    Il resto rimane uguale.

    La risposta è stata utile?

    0 commenti Nessun commento