Como sacar un promedio según los datos de un listbox seleccionado un rango inicial y final sacando el promedio entre esos rangos

Desde un botón importo datos a un listbox, y necesito sacar un promedio sera posible hacer esto, tengo 2 posibles opciones

Opción 1

Opcion 2 :

1 Respuesta

Respuesta
1

¿Tienes las 2 fecha en la misma celda?

Veo que tienes 2 fechas entre paréntesis, cuál de las 2 fechas es la que se debe comparar, la de la izquierda o la de la derecha.

Más específico: capturas la fecha inicio, ¿la comparo contra la fecha de la izquierda?

¿La fecha fin la comparo también contra la fecha de la izquierda?


Lo que faltó en tu ejemplo es llenar los combos con las fechas de inicio y fin.

Puedes completar el ejemplo para que sea más claro.

Muchas gracias por responder .. donde dice periodo de consumo es solo un dato solamente de fecha .. columna A =  periodo de consumo y columna B : consumos .

Podrías detallar un poco más

¿Tienes las 2 fecha en la misma celda?

Veo que tienes 2 fechas entre paréntesis, cuál de las 2 fechas es la que se debe comparar, la de la izquierda o la de la derecha.

Más específico: capturas la fecha inicio, ¿la comparo contra la fecha de la izquierda?

¿La fecha fin la comparo también contra la fecha de la izquierda?


Lo que faltó en tu ejemplo es llenar los combos con las fechas de inicio y fin.

Puedes completar el ejemplo para que sea más claro.

Le envío mi correo es que la verdad no lo puedo solucionar agradecería mucho su ayuda

[email protected] , ud me podría enviar su correo para poder enviarle el archivo y pueda mirarlo ahí se entiende mejor .. por favor

Yo te ayudo a solucionarlo, pero me tienes que responder esto y en ese orden:

A) ¿Tienes las 2 fecha en la misma celda?

B) Veo que tienes 2 fechas entre paréntesis, cuál de las 2 fechas es la que se debe comparar, la de la izquierda o la de la derecha.

C) Más específico: capturas la fecha inicio, ¿la comparo contra la fecha de la izquierda?

D) ¿La fecha fin la comparo también contra la fecha de la izquierda?


E) Lo que faltó en tu ejemplo es llenar los combos con las fechas de inicio y fin.

F) Puedes completar el ejemplo para que sea más claro.

A) Si, las 2 fechas están en la misma celda ( inicio y final )

B) Es la fecha de la izquierda ( actualize el ejemplo)

C) La fecha de inicio es la de la izquierda

D) La fecha fin es la de la izquierda

E) actualize ejemplo adjunto fotografía

F) Complete el ejemplo adjunto fotografía

Considerando los datos como en la última imagen

Te anexo el código para el promedio

Private Sub CommandButton1_Click()
'Por Dante Amor
    'comparar fechas y promediar valores
    '
    TextBox1.Value = ""
    If ComboBox1.Value = "" Or Not IsDate(ComboBox1.Value) Then
        MsgBox "Captura una fecha inicial"
        Exit Sub
    End If
    fec1 = CDate(ComboBox1.Value)
    If ComboBox2.Value = "" Then
        fec2 = fec1
    Else
        If Not IsDate(ComboBox2.Value) Then
            MsgBox "Captura una fecha final válida"
            Exit Sub
        Else
            If CDate(ComboBox2.Value) < fec1 Then
                MsgBox "Captura una fecha final mayor a la fecha inicial"
                Exit Sub
            End If
        End If
    End If
    fec2 = CDate(ComboBox2.Value)
    If ListBox1.ListCount = -1 Then
        MsgBox "No hay registros en el list"
        Exit Sub
    End If
    '
    n = 0
    For i = 0 To ListBox1.ListCount - 1
        If CDate(ListBox1.List(i, 0)) >= fec1 And _
           CDate(ListBox1.List(i, 0)) <= fec2 Then
            wsum = wsum + Val(ListBox1.List(i, 1))
            n = n + 1
        End If
    Next
    If n > 0 Then
        TextBox1.Value = wsum / n
    End If
End Sub

.

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas