maurogsc.eu
mauro gamberini


home ==> Excel: come fare per ==> UserForm: ore e minuti

UserForm: ore e minuti - VBA

NOTA. La soluzione ed il codice sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dal codice o dalla soluzione proposta se usati impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare il codice o la soluzione in files importanti.

1 - Per permettere all'utente di selezionare ore e minuti da utilizzare poi nel codice/trasferire sul foglio, possiamo utilizzare questa soluzione. Creiamo una UserForm con due ComboBox, una per le ore, una per i minuti e le popoliamo con i minuti e le ore. Questo il codice da inserire nel modulo di codice della UserForm :

Private Sub UserForm_Initialize()
    Dim lng As Long
    With Me
        For lng = 0 To 23
            .ComboBox1.AddItem Format(lng, "00")
        Next
        For lng = 0 To 59
            .ComboBox2.AddItem Format(lng, "00")
        Next
    End With
End Sub

Questo è l'aspetto della UserForm con già selezionata l'ora e con i minuti in corso di selezione:

Questo il codice per un eventuale pulsante(CommandButton) posizionato sulla UserForm che inserisce le ore/minuti selezionati nella cella attiva del file di Excel:

Private Sub CommandButton1_Click()
    With Me
        If Len(.ComboBox1.Text) = 0 Or _
            Len(.ComboBox2.Text) = 0 Then
            MsgBox "Selezionare ore e minuti."
            Exit Sub
        Else
            MsgBox .ComboBox1.Text & _
                ":" & .ComboBox2.Text
        End If
    End With
End Sub

Questo il codice per un eventuale pulsante(CommandButton) posizionato sulla UserForm che inserisce le ore/minuti selezionati in una TextBox sulla stessa UserForm:

Private Sub CommandButton1_Click()
    With Me
        If Len(.ComboBox1.Text) = 0 Or _
            Len(.ComboBox2.Text) = 0 Then
            MsgBox "Selezionare ore e minuti."
            Exit Sub
        Else
            .TextBox1.Text = .ComboBox1.Text & _
                ":" & .ComboBox2.Text
        End If
    End With
End Sub

Vedi anche qui: UserForm: date

Per ulteriori informazioni su Microsoft Excel ed il suo Visual Basic, utilizzate questo forum:
http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/threads


Ultimo aggiornamento di questa pagina: 29/11/2010 - mauro gamberini