Lanciare una macro

  • Lanciare macro di Max
    Prima di tutto grazie per la vostra disponibilita'. ho sempre problemi connessi con il lancio di una macro automaticamente.
    mi e' stato suggerito un modo che con un loop lancia la mia macro, ma entrato il loop mi lavora solo quella macro (cash in questione), le altre sono bloccate.
    come posso fare per risolvere il problema.
    e' possibile che automaticamente non c'e' un sistema per far fare dei calcoli senza dover fare questa cosa un po' macchinosa ?
    io ho dei prezzi di azioni che tramite un collegameto dde mi si aggiornano su una cella, usando il selectionchange la macro non parte ache se la cella si aggiorna in continuazione non reagisce al cambiamento di prezzo, perche ?
    ho usato calculate ma mi si impianta tutto. forse macro troppo grosse
    quindi la macro qui sotto mi risolve il problema parzialmente perche' ho parecchie macro da far girare ma in tempi diversi, mi potete aiutare ?
    ultima domanda ammesso che non sia possibile trovare una soluzione al mio problema, come disattivo la macro qui sotto magari con un doppio click su button1. grazie a tutti trovo questo sito utilissimo.


     
    Private Sub CommandButton1_Click()
    Dim pausetime, start
    pausetime = 1 ' secondi di attivazione
    start = Timer
    Do
    DoEvents
    If Timer > start + pausetime Then
    Call cash ' metti il nome della tua macro
    start = Timer
    End If
    Loop
    End Sub

    Ciao max di Apoben64
    E' evidente che la macro è sempre in funzione , visto peraltro che vi è un solo secondo di attivazione e di ripetizione quindi questo ti può compromettere le altre macro; forse dovresti prolungare il tempo di esecuzione.
    ouupre per far sì che il ciclo non si ripeti vedi sotto quale riga eliminare.
    un saluto luca

     
    Private Sub CommandButton1_Click()
    Dim pausetime, start
    pausetime = 1 ' secondi di attivazione
    start = Timer
    Do
    DoEvents
    If Timer > start + pausetime Then
    Call cash ' metti il nome della tua macro
    start = Timer ' per far sì che non si ripeti il ciclo devi eliminare questa istruzione
    End If
    Loop
    End Sub