Elaborar indicadores en access

Tengo una tabla con dos campos, el primer campo se llama troquel del equipo, y el otro campo se llama estado del equipo.
El campo troquel del equipo se llena con datos de combinación de números y texto pues es la forma de identificar los motores en la empresa
el campo estado del equipo, es el estado en que se encuentra cada equipo y las cuales pueden ser alerta, peligro y bien, dependiendo cual sea el caso
mi duda es que tengo que hacer 3 indicadores de gestión las cuales son:
(Numero de equipos en peligro/total de equipo)*100
(Numero de equipo en buen estado/total de equipos)*100
(Numero de equipo en alerta/total de equipo)*100
nota:... El total de equipos seria la cantidad de registro que este en la tabla.
Espero pueda ayudarme.. Y osoy medio nuevo en access y no me había tocado hacer algo así..
Quisiera que los indicadores me los diera un botón en un formulario, osea serian 3 botones.. O noc que me pudieras aconsejar...
Espero me halla explicado... Y espero su ayuda.. Je je suerte y éxito

1 Respuesta

Respuesta
1
Bien, abres el formulario, que apunte a esa tabla que no me has dicho el nombre y le creas 3 textbox independientes que llamaremos "bien","alerta" y "peligro".
Luego un botón, y en el procedimiento del evento "al hacer click", creamos el código.
 Dim rst As DAO.Recordset
 Dim strSql As String
 Dim NomCamp As String
 Dim NomTabla As String
 Dim xtotal,xbien,xpeligro,xalerta as integer
 NomCamp = "[estado del equipo]"
 NomTabla = "<nombre de la tabla que contiene los datos>"
 xtotal=0
 xbien=0
 xpeligro=0
 xalerta=0
 If Nz(NomCamp, "") <> "" Then
    If Nz(NomTabla, "") <> "" Then
        strSql = "SELECT " & NomCamp & " FROM " & NomTabla & ";"
        Set rst = CurrentDb.OpenRecordset(strSql)
        With rst
            If (Not .EOF) And (Not .BOF) Then
                Do While Not .EOF
                    xtotal=xtotal+1
                    if .Fields(0) = "alerta" then
                          xalerta=xalerta+1
                    end if
                    if .Fields(0) = "bien" then
                          xbien=xbien+1
                    end if
                    if .Fields(0) = "peligro" then
                          xpeligro=xpeligro+1
                    end if
                    .MoveNext
                Loop
            End If
        End With
    End If
 End If
 bien.value = xbien/xtotal*100
 alerta.value = xalerta/xtotal*100
 peligro.value = xpeligro/xtotal*100

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas