Come utilizzare VBA per fare una contro

December 5

Come utilizzare VBA per fare una contro


Creazione di un contatore utilizzando Visual Basic, Applications Edition (VBA) può essere facilmente realizzato utilizzando una interfaccia utente (UI) o di un modulo. VBA è un linguaggio di programmazione utilizzato in una delle applicazioni di Microsoft Office come Excel. In Excel, è possibile creare un form con controlli come etichette e pulsanti per avviare, arrestare, riprendere e terminare un contatore. Il modo migliore per creare un timer è quello di utilizzare un "ciclo FOR ..." e aggiornare l'etichetta con il tempo più recente finché l'utente non decide di fermarsi o terminare il contatore.

istruzione

1 Avviare Microsoft Office Excel, fare clic sulla scheda "Sviluppatore" e fare clic su "Visual Basic" per avviare la finestra di VB Editor. Fare clic sul menu "Inserisci" e fare clic su "form" per aggiungere un nuovo modulo. Fai clic su "Etichetta" dal riquadro "Strumenti" e fare clic sul modulo per aggiungere una nuova etichetta. Fai clic su "pulsante di comando" e fare clic sul modulo per aggiungere un nuovo pulsante. Aggiungere altri tre pulsanti di comando con la stessa tecnica.

2 Fare clic con il modulo e fare clic su "Visualizza codice" per visualizzare il modulo di codice. Aggiungere il seguente codice per creare sei variabili globali a questo modulo:

stp pubblico come booleano

pubblico OldH

pubblico oldm

Olds pubblici

pubblico OLDMLN

3 Copia e incolla il seguente codice per creare un nuovo evento click per "CommandButton1" per avviare il timer:

stp = false

CommandButton1.Enabled = False

CommandButton2.Enabled = True

CommandButton3.Enabled = False

H = 0

Per M = 0 a 59

Per S = 0 a 59

Per MLN = 0 a 59

t = Timer

Fare Fino Timer - t> = 1/60

DoEvents

Ciclo continuo

Se STP = True Then GoTo X

Label1.Caption = _

Format (H, "00") & ":" & Format (M, "00") _

& ":" & Format (S, "00") & ":" & Format (MLN, "00")

Successivo MLN

Successivo S

Successivo M

H = H + 1

X:

OldH = H

Oldm = M

Olds = S

OLDMLN = MLN

stp = false

4 Copiare e incollare il seguente codice per creare un evento click per "CommandButton2" che permetterà "CommandButton1" e "CommandButton3:"

Private Sub CommandButton2_Click ()

CommandButton1.Enabled = True

CommandButton2.Enabled = False

CommandButton3.Enabled = True

stp = true

End Sub

5 Copiare e incollare il seguente codice per creare un evento click per "CommandButton3" per riprendere il timer:

Private Sub CommandButton3_Click ()

CommandButton3.Enabled = False

CommandButton2.Enabled = True

CommandButton1.Enabled = False

stp = false

H = OldH

Per M = oldm a 59

Per S = Olds a 59

Per MLN = OLDMLN a 59

t = Timer

Fare Fino Timer - t> = 1/60

DoEvents

Ciclo continuo

Se STP = True Then GoTo X

Label1.Caption = _

Format (H, "00") & ":" & Format (M, "00") _

& ":" & Format (S, "00") & ":" & Format (MLN, "00")

Successivo MLN

Successivo S

Successivo M

H = H + 1

X:

OldH = H

Oldm = M

Olds = S

OLDMLN = MLN

stp = false

End Sub

6 Creare un evento click per "CommandButton4" per chiudere il programma:

Private Sub CommandButton4_Click ()

Unload Me

Fine

End Sub

7 Aggiungere il seguente codice per definire le didascalie per il marchio ed i pulsanti durante l'avvio:

Private Sub UserForm_Initialize ()

CommandButton1.Enabled = True

CommandButton1.Caption = "Start Timer"

CommandButton2.Enabled = False

CommandButton2.Caption = "Stop"

CommandButton3.Enabled = False

CommandButton3.Caption = "Riprendi Timer"

CommandButton4.Caption = "Cancel"

Label1.Caption = "00: 00: 00: 00"

End Sub

8 Aggiungere il seguente codice per terminare il programma:

Private Sub UserForm_QueryClose (Cancel come numero intero, CloseMode come numero intero)

If CloseMode = 0 Then Cancel = True

End Sub

9 Fare doppio clic su "UserForm1" dalla finestra "Object Explorer" e premere il tasto "F5" per eseguire il programma. Fare clic su "Start Timer" per avviare il contatore, fare clic su "Stop" per fermarlo, e fare clic su "Riprendi Timer" per riprendere il contatore. Fai clic su "Annulla" per terminare il programma.