Ver Mensaje Individual
  #15 (permalink)  
Antiguo 29/11/2009, 17:06
ASelo182
 
Fecha de Ingreso: marzo-2009
Mensajes: 61
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Calcular ganancias por Mes

Gracias maestro, ídolo, capo!
Te cuento que me he inclinado por hacer un Combobox que permite seleccionar el año, luego busca si hay registros para ese año en el Flexgrid y los muestra en la matriz de controles que tan bien me explicaste.

Estuve probando y funciona excelente, solo que hay un pequeño, muy inconveniente y es que si selecciono un año en el que no existen registros, se muestra el mensaje "No hay registros para el mes seleccionado" tantas veces como años hay cargados en el ComboBox.
Si selecciono un año en el que sí hay registros, me muestra el mensaje anteriormente detallado sólo una vez y luego procede a hacer el cálculo y da los valores en los Textbox.

Este es el código que uso
Cita:
Private Sub Command5_Click()
On Error GoTo Errores
For i = 1 To MSFlexGrid1.Rows - 1
If Year(MSFlexGrid1.TextMatrix(i, 6)) = Combo1 Then
Mes = Month(MSFlexGrid1.TextMatrix(i, 6))
Mensuales(Mes) = Mensuales(Mes) + MSFlexGrid1.TextMatrix(i, 9)
Text2(Mes) = Mensuales(Mes)
Else
MsgBox "No hay registros para el mes seleccionado"
End If
Next i
Exit Sub
Errores:
MsgBox "Se ha producido error al procesar la fecha " & MSFlexGrid1.TextMatrix(i, 6)
End Sub
Supongo que el mensaje entra en un bucle, pero esto no debería pasar si la condicion Year(MSFlexGrid1.TextMatrix(i, 6)) = Combo1 no se cumple... por eso mismo había puesto el Else

Voy a ver como lo soluciono!
Muchas gracias por todo erbuson, se nota que te pasiona mucho el tema y que, además, cuentas con una gran experiencia y sabiduría.

Un saludo!