Ciao
"Francesco" ha scritto:
> Salve a tutto il NG, ho di nuovo bisogno del vostro aiuto.
> Mi spiego, in un foglio di excel è visualizzato un userform con dei comandi.
[...]
> > Allo scadere dei 5 minuti
[...]
> nella guida in linea ... l'esempio della funzione Timer dovrebbe fare al caso
> tuo ... viene utilizzata insieme alla funzione DoEvents (
> Timer membro di VBA.DateTime)
Ciao r.
... augurandosi che Francesco non faccia partire il meccanismo quando
per esempio mancano tre minuti a mezzanotte. ;-)
--
Maurizio Borrelli [Microsoft MVP - Excel]
http://www.riolab.org/
> in un foglio di excel č visualizzato un userform con dei comandi.
> Io vorrei che chiudendo l'userform, alla pressione del comando "esci"
> l'userform si chiuda e si attivi una specie di conto alla rovescia, diciamo
> di 5 minuti.
> Allo scadere dei 5 minuti si dovrebbe attivare un altro userform.
Ciao Francesco.
Potresti cominciare consultando la Guida a proposito di:
Sub OnTime(EarliestTime, Procedure As String, [LatestTime], [Schedule])
Membro di Excel.Application
Function Wait(Time) As Boolean
Membro di Excel.Application
Poi, se serve aiuto... fischia. ;-)
(Facci sapere se e eventualmente come hai risolto. Grazie!)
Private Sub CommandButton1_Click()
Unload Me
Application.OnTime Now + TimeValue("00:05:00"), "conta"
End Sub
Alla pressione di CommandButton1 chiude l'userform e inizia un conto alla
rovescia di 5 min.
Dopo 5 min. esegue la sub "conta"
Sub conta()
Load UserForm2
UserForm2.Show
End Sub
Avevi ragione, bastava leggere meglio la guida, č anche vero che una dritta
da chi ne sa di piů, aiuta ha guardare prima nei posti giusti.
Adesso non sň come fare per la pass di login dell'userform, fino a creare
tutti gli userform ci arrivo, il codice per il funzionamento della pass č
buio totale, come posso fare ??
> per quanto riguarda la macro a tempo ho risolto cosě:
> Private Sub CommandButton1_Click()
> Unload Me
> Application.OnTime Now + TimeValue("00:05:00"), "conta"
> End Sub
> Alla pressione di CommandButton1 chiude l'userform e inizia un conto alla
> rovescia di 5 min.
> Dopo 5 min. esegue la sub "conta"
> Sub conta()
> Load UserForm2
> UserForm2.Show
> End Sub
[...]
> Adesso non sň come fare per la pass di login dell'userform, fino a creare
> tutti gli userform ci arrivo, il codice per il funzionamento della pass č
> buio totale, come posso fare ??
Ciao Francesco.
Prima una domanda: perche' non usi la gestione della password di Excel?
Intendo la password a livello file, quella che imposti al salvataggio.
In questo modo il file potra' essere aperto solo da chi conosce la
password. Col sistema degli UserForm invece il file potra' essere aperto
senza che il tuo codice intervenga.
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As _
Integer)
If CloseMode = vbFormControlMenu Then Cancel = True
End Sub
Pare che funzioni a dovere, per la richiesta di pass, ho utilizzato il
seguente codice:
Private Sub CommandButton1_Click()
If TextBox1 <> "paperino" Then
MsgBox ("PASSWORD NON CORRETTA - ACCESSO NON CONSENTITO")
Unload Me
Load UserForm3
UserForm3.Show
ElseIf TextBox1 <> "-" Then
MsgBox ("PASSWORD CORRETTA - ACCESSO CONSENTITO")
Unload Me
Load UserForm2
UserForm2.Show
End If
End Sub
Anche questo sembra che funzioni, anche se onestamente non capisco come
faccia, in fondo sono un autodidatta di VBA, cerco informazioni in rete, da
persone che ne sanno più di me e mi adatto a quello che trovo.
Se ne hai voglia, ti chiederei di spiegarmi come fa ha funzionare il codice
sopra.
Secondo me dovrebbe funzionare al contrario.
Ciao e grazie 1000 per l'attenzione
"Maurizio Borrelli" ha scritto:
> .... augurandosi che Francesco non faccia partire il meccanismo quando
> per esempio mancano tre minuti a mezzanotte. ;-)
in tal caso avrebbe un bug ... e sarebbe costretto ad un poco elegante
Ctrl+Alt+Canc
:-)
r