Condividi:        

conto alla rovescia

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

conto alla rovescia

Postdi zuzzumaja » 06/12/09 22:12

Salve avrei bisogno di creare una macro per un conto alla rovescia di 60 secondi, e che una volta arrivato a zero, ricomnci nuovamente senza interruzione. Chiaramente la macro deve visualizzare i secondi mancanti.
Ringrazio anticipatamente
zuzzumaja
Utente Junior
 
Post: 68
Iscritto il: 26/08/09 13:34

Sponsor
 

Re: conto alla rovescia

Postdi Flash30005 » 07/12/09 02:50

Prova questo codice
Codice: Seleziona tutto
Sub Conteggio()
For sec = 60 To 0 Step -1
Range("A1").Value = sec
    Application.Wait (Now + TimeValue("0:00:01"))
Next sec
Call Conteggio
End Sub


Avrai il conteggio alla rovescia nella cella A1 come richiedi da 60 a 0 ma...
credo che il conteggio debba partire da 59 (se vuoi vedere lo zero) altrimenti perderesti un secondo per ogni ciclo oppure lasciare 60 come inizio conteggio e terminarlo a 1

Fai sapere
Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: conto alla rovescia

Postdi zuzzumaja » 10/12/09 20:19

Perfetto, avrei bisogno di inserire anche il pulsante stop, visto che una volta lanciata la macro, non mi fa più interaggire con il foglio excel

grazie
zuzzumaja
Utente Junior
 
Post: 68
Iscritto il: 26/08/09 13:34

Re: conto alla rovescia

Postdi Flash30005 » 11/12/09 00:01

Se devi fermare la macro puoi utilizzare i tasti CTRL+Pausa (che fermano tutte le macro andando in debug)

Il tasto Stop deve bloccare il conteggio in qualsiasi punto si trovi oppure deve continuare fino ad arrivare a 0 (o a 60?) e poi fermarsi?

Fai sapere
Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: conto alla rovescia

Postdi zuzzumaja » 11/12/09 12:01

va bene in qualsiasi momento, attraverso un pulsante stop (in pratica come il ctrl+pausa ma senza far comparire la maschera di debug)
grazie
zuzzumaja
Utente Junior
 
Post: 68
Iscritto il: 26/08/09 13:34

Re: conto alla rovescia

Postdi Flash30005 » 11/12/09 14:58

Ok,
"rubo" un'idea di Anthony e la adatto alle tue esigenze...
copia l'intera macro in un modulo (come sempre)
Codice: Seleziona tutto
Sub Conteggio2()
Dim NormA1 As Single
[A1] = 0
Do
If [A1] <= 0 Then NormA1 = Timer + 61
[A1] = Int(NormA1 - Timer)
DoEvents
If [C1] = "AVVIA" Then GoTo esci
Loop
esci:
End Sub


---------------------------
Poi copia il codice qui sotto riportato
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address <> "$C$1" Then Exit Sub
    Application.EnableEvents = False
    If Selection.Value = "STOP" Then
        Selection.Value = "AVVIA"
    Else
        Selection.Value = "STOP"
    End If
    ActiveCell.Offset(0, 1).Select
    Application.EnableEvents = True
    If [C1] = "STOP" Then Call Conteggio2
End Sub

e lo incolli nel VBA del foglio (non nel modulo) come esempio riportato nel post del 9 dicembre ore 10:57 in questo topic

Poi clicca sulla cella C1 del foglio (con macro)

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "conto alla rovescia":


Chi c’è in linea

Visitano il forum: Nessuno e 82 ospiti

cron