domingo, 4 de marzo de 2012

Suma Selectiva

En este post, hemos creado un procedimiento que pueda realizar una suma selectiva de acuerdo a una serie de condiciones. Por ejemplo, es posible que quieran sumar las cifras que han alcanzado el objetivo de ventas. 
Este procedimiento puede resumir los valores que estén por debajo o por encima de un valor dado.

Este procedimiento se iniciara cuando presionemos un botón creado en nuestra hoja, para insertar el botón nos vamos a la ficha programador insertar controles, en controles Activex presionamos en el icono del botón.


Lo pegamos donde nos sea mas accesible, seleccionamos el botón, presionamos sobre el botón derecho del ratón y en el cuadro de dialogo presionamos propiedades.

En el cuadro de propiedades seleccionamos la propiedad Caption y la cambiamos por el nombre que identifique la función del botón, por ejemplo Suma Selectiva.


Hacemos doble click sobre el botón y directamente nos sale el editor de VB con el evento predeterminado del botón que hemos creado, a este evento le añadimos nuestro procedimiento.

Private Sub CommandButton1_Click()
Dim rng As Range, i As Integer, a As Integer
Dim temporal, sumFallida, suma, valorLimite As Single
sumFallida = 0
suma = 0
valorLimite = 0
Set rng = Application.InputBox("Por favor seleccione el rango de calculo!", _
"SeleccionarRango", Selection.Address, , , , , 8)
On Error Resume Next
valorLimite = InputBox("Por favor establezca el valor limite!", "SeleccionarValor", , , 6)
a = rng.Count
    For i = 1 To a
            temporal = rng.Cells(i).Value
        Select Case temporal
        Case Is < valorLimite
            sumFallida = sumFallida + temporal
        Case Is >= valorLimite
            suma = suma + temporal
        End Select
    Next i
MsgBox "La suma de los valores menores de " & valorLimite & " es: " & Str(sumFallida) & vbCrLf & _
"La suma de los valores mayores de " & valorLimite & " es: " & Str(suma)
End Sub

Cerramos el editor y quitamos el modo diseño de la ficha programador, presionamos sobre el botón y si todo ha salido correctamente nos deberá de salir algo parecido a la siguiente imagen:



No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.