Condividi:        

[Office e VBA] Fermare una macro

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

[Office e VBA] Fermare una macro

Postdi luca2002for » 08/05/06 11:07

Ciao a tutti :-) come va?
Vi sottopongo un quesito al quale non trovo risposta sulla rete.
O meglio, una risposta c'è, ma mi sembra un pò semplicstica.

La domanda è: è possibile fermare l'esecuzione di una macro specifica?

A questo quesito normalmente si risponde facendo riferimento al tasto azzurro nell'editor vba. Perfetto. Solo che in questo modo, se non ho capito male, si interrompe (per poi eventualmente ripristinare) l'esecuzione di tutte le macro del foglio.

Può accedere, invece, che si voglia interrompere la macro X (perchè non serve più o perchè sta combinando dei pasticci), ma al contempo si vogliano tenere "vive" le macro Y e Z. (Il problema ha senso, a maggior ragione quando le macro girano periodicamente con onTime).

Esiste un comando di vba che permetta di essere selettivi nella scelta delle macro da interrompere/ripristinare?

Grazie mille dell'aiuto

Luca
luca2002for
Utente Senior
 
Post: 116
Iscritto il: 07/05/06 09:32

Sponsor
 

Postdi Anthony47 » 08/05/06 12:16

Ciao,
il mio suggerimento:
-ti metti su un worksheet de tuo workbook dei checkbox (li trovi tra gli strumenti "moduli") con cui abilitare / disabilitare le macro che vuoi; in ogni macro inserisci, in prima posizione o anche all' interno di loop critici, la verifica (tamite la "cella collegata" al ckeckbox) che il box sia spuntato=continui, o no=esci.

Buone prove..
Avatar utente
Anthony47
Moderatore
 
Post: 19440
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi Alexsandra » 08/05/06 13:06

Fermare una macro in esecuzione è un pò ardua,nel senso che il Pc è talmente veloce che non fai tempo a cliccare per fermare il processo. Io lo metterei sotto forma di prendere delle decisioni,nel senso che quando lanci una macro devi essere certo di quello che fai.Esempio
Codice: Seleziona tutto
 If Range("A1") = False Then
 Mt = Mt & "Hai scelto di lanciare questa macro& Chr(13) & Chr(13)
 Mt = Mt & "Sei sicuro di volerlo fare ????" & Chr(13) & Chr(13)
 rs = MsgBox(prompt:=Mt, Title:="Titolo_del_tuo_prog", Buttons:=vbYesNo + vbQuestion)
 If rs = vbNo Then Exit Sub
(i riferimenti li ho messi a caso puoi modificarli in base alle tue esigenze)
Se poi hai concatenato varie macro nel senso che terminata una parte l'altra puoi fermare il programma con un input Box e chiedere conferma se proseguire oppure no. oppure puoi fare 2 richieste la 1° con il codice di sopra se fai clik su SI puoi richiedere conferma (usi lo stesso codice) cambiando magari il messaggio che mandi a video "Hai scelto di proseguire, sei sicuro?? "
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi luca2002for » 08/05/06 22:33

Grazie mille ad entrambi, metterò in pratica i suggerimenti

(naturalmente dopo aver studiato un pochino per capirli) ;-)

buona notte

:-)
luca2002for
Utente Senior
 
Post: 116
Iscritto il: 07/05/06 09:32


Torna a Applicazioni Office Windows


Topic correlati a "[Office e VBA] Fermare una macro":


Chi c’è in linea

Visitano il forum: Nessuno e 26 ospiti