Access - Promedio entre campos según cantidad de registros

 
Vista:

Promedio entre campos según cantidad de registros

Publicado por Victor Morales (5 intervenciones) el 19/12/2008 13:27:47
Hola a todos:
Tengo una base de datos en la cual debo calcular el promedio de tres campos, cada campo puede tener un puntaje entre 0 y 3 (0,1,2,3), pero la formula debe calcularlo entre los números que tienen puntaje sobre 0. Me explico con este modelo:

[campo1] [camo2] [campo3] [promedio]
3 3 3 3
3 3 0 3
2 2 2 2
2 2 0 2
2 2 1 1,6

Espero que me ayuden
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Promedio entre campos según cantidad de registr

Publicado por Marcos (236 intervenciones) el 19/12/2008 16:27:01
Victor, este código lo puse en el evento al hacer click en un boton del formulario.

Private Sub Comando10_Click()
Dim Prmdio As Integer
Dim Veces As Integer
Dim SumaCampos As Integer

Veces = 3

If Me.Campo1 = 0 Then
Veces = Veces - 1
End If
If Me.Campo2 = 0 Then
Veces = Veces - 1
End If
If Me.Campo3 = 0 Then
Veces = Veces - 1
End If

SumaCampos = Campo1 + Campo2 + Campo3
Prmdio = SumaCampos / Veces
Me.Promedio = Prmdio

End Sub

Para el ejemplo y como describe el código, los campos en el formulario son: Campo1, Campo2 , campo3 y Promedio.

Saludos.
Marcos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Promedio entre campos según cantidad de registr

Publicado por Marcos (236 intervenciones) el 21/12/2008 15:10:20
Victor, hay un detallito. Ante la posibilidad que el promedio sea con decimales, en el codigo cambia el tipo de datos de la variable Prmdio por Double, así.
Dim Prmdio As Double
Marcos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Promedio entre campos según cantidad de registr

Publicado por Victor Morales (5 intervenciones) el 23/12/2008 03:29:06
Muchas gracias Marcos, lo tendré en cuenta.
Victor Morales
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar