Visual Basic - Devolver el valor de un campo calculado

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Devolver el valor de un campo calculado

Publicado por Toni (7 intervenciones) el 27/03/2019 17:07:05
Buenas,

Deseo crear una función en vba que haga un cálculo mediante un recordset sobre los campos de una tabla, y devuelva el total.

Seria algo así cómo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Function Total() As Integer
 
    Dim rst1 As Recordset
    Dim TBanc, TEfect As Integer
 
    TBanc = 0
    TEfect = 0
 
    sSQL = "SELECT * FROM PAGOS"
    Set rst1 = CurrentDb.OpenRecordset(sSQL)
 
    If rst1.RecordCount > 0 Then
        Do Until rst1.EOF
 
              (Suma los valores contenidos en el campo 'Efectivo', y lo almacena en TEfect)
              (Suma los valores contenidos en el campo 'Banco', y lo almacena en TBanc)
 
        Loop
    End If
 
    rst1.Close
    Set rst1 = Nothing
 
    Debug.Print TBanc
    Debug.Print TEfect
 
End Function


Entonces, desearía saber si està bien formulada esta función, y también cómo puedo llamar esta función, desde la Ventana Inmediato de VBA y desde un campo calculado en un formulario.

Gracias.
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
Imágen de perfil de gilman
Val: 462
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Devolver el valor de un campo calculado

Publicado por gilman (268 intervenciones) el 28/03/2019 08:36:41
Yo cambiaría la sql por:
1
SELECT SUM(Efectivo) AS TEFECTIVO, SUM(Banco) AS TBANCO FROM PAGOS
que ya te realiza el cálculo.
En cuanto a la otra pregunta, no tengo muy claro que es lo que pretendes, pero de todas formas es un tema de Visual Basic para Aplicaciones, así que mejor la planteas en ese foro.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar