Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Función Minute VBA

| 1 Comment

La función Minute en VBA sirve para obtener el minuto de un valor de hora asignado o de la hora en la que se ejecuta el comando. El valor del minuto está comprendido entre los valores 0 y 59.

Con el siguiente ejemplo podemos determinar el segundo de una hora asignada

Sub Macro1()
Dim Estahora As Date
Dim Esteminuto As Integer
Estahora = #4:35:17 AM#
Esteminuto = Second(Estahora)
MsgBox “El minuto es: ” & Esteminuto
End Sub

Con el siguiente ejemplo podemos determinar el segundo de la hora en la que se ejecuta el comando

Sub Macro2()
Dim Estahora As Date
Dim Esteminuto As Integer
Estahora = TimeValue(Now)
Esteminuto = Minute(Estahora)
MsgBox “El minuto es: ” & Esteminuto
End Sub

Un caso en el cual es necesario identificar el minuto, e incluso el segundo, en el cual se hace el registro del tiempo es en las competencias deportivas.

En el siguiente ejemplo, utilizando la función MINUTE y la funcion SECOND se ha identificado el minuto y segundo exacto en la que un competidor termina una prueba, de forma que se pueda determinar quien gana la competencia.

En la siguiente tabla se muestran los resultados (minuto y segundo) de los competidores:

One Comment

  1. Al darle TimeValue(NOW), estamos haciendo referencia a la hora del sistema y no a la hora capturada en la hoja.

    Hice el ejercicio y asi me quedo.

    Private Sub CommandButton2_Click() ‘ La funcion Minute sirve para obtener el minuto de un valor de hora asignado o de la hora en la que se ejecuta el comando
    Dim hora As Date
    Range(“C14”).Value = “La Hora es:”
    Range(“C14”).Font.Bold = True

    Range(“D14”).Value = “Los Minutos son:”
    Range(“D14”).Font.Bold = True
    Range(“E14”).Value = “Los Segundos son:”
    Range(“E14”).Font.Bold = True

    For i = 15 To 23
    hora = Range(“B” & i).Value ‘ Se le asigna a una variable el valor de la hora que se tiene registrada en la hoja, en este caso es la Celda (B15)
    ‘Range(“B” & i).Value = TimeValue(Now) ‘ TimeValue(Now) indica que se va a tomar la hora del sistema actual
    Range(“C” & i).Value = Hour(hora) ‘Se extrae el valor de la hora y se captura en la celda (Ci)
    Range(“D” & i).Value = Minute(hora) ‘Se extrae el valor del minuto y se captura en la celda (Di)
    Range(“E” & i).Value = Second(hora) ‘Se extrae el valor del segundo y se captura en la celda (Ei)
    Next i

    ‘ESTE ES EL EJERCICIO PARA ENTENDER LA FUNCION
    ‘ Dim Estahora As Date
    ‘ Dim Lahora As Integer
    ‘ Estahora = #4:59:17 AM#
    ‘ Lahora = Hour(Estahora)
    ‘ MsgBox “La Hora es: ” & Lahora

    ‘ Dim Estahora1 As Date
    ‘ Dim Esteminuto As Integer
    ‘ Estahora1 = TimeValue(Now)
    ‘ Esteminuto = Minute(Estahora)
    ‘ MsgBox “El minuto es: ” & Esteminuto

    ‘ Dim Estahora2 As Date
    ‘ Dim Estesegundo As Integer
    ‘ Estahora2 = TimeValue(Now)
    ‘ Estesegundo = Second(Estahora)
    ‘ MsgBox “El segundo es: ” & Estesegundo

    End Sub

    Excelente apoyo, saludos

Deja un comentario

Required fields are marked *.