** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Recorrer todos los registros y campos
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Recorrer todos los registros y campos

 Responder Responder
Autor
Mensaje
JuanRB Ver desplegable
Asiduo
Asiduo
Avatar

Unido: 06/Mayo/2004
Localización: España
Estado: Sin conexión
Puntos: 324
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita JuanRB Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Recorrer todos los registros y campos
    Enviado: 11/Diciembre/2024 a las 09:56

Buenos días y muchas gracias por vuestro tiempo,

Tengo un formulario principal con varias páginas (pestañas) y dentro de cada una de esas páginas tengo un formulario continuo con varios campos.

Lo que deseo es que al hacer clic (en la pestaña) me recorra todos los registros (líneas) del formulario continuo pasando por todos los campos de cada uno de los registros.


<font color=BLUE>Las oportunidades que tu pierdes, otro las aprovecha.[/COLOR]
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14926
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 11/Diciembre/2024 a las 10:34
Hola,

Y el problema, exactamente, ¿Cuál es?

Porque recorrer registros mediante un Recordset y los recorrer la colección Fields de cada registro está ampliamente documentado.

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
JuanRB Ver desplegable
Asiduo
Asiduo
Avatar

Unido: 06/Mayo/2004
Localización: España
Estado: Sin conexión
Puntos: 324
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita JuanRB Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 11/Diciembre/2024 a las 11:35
Gracias Xavi,

No he encontrado nada que entienda para aplicar lo que necesito.

Al recorrer todos los campos de todos los registros es porque al llegar a un campo concreto de cada registro se realizan unos cálculos concretos.
<font color=BLUE>Las oportunidades que tu pierdes, otro las aprovecha.[/COLOR]
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14926
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 11/Diciembre/2024 a las 11:54
En el evento Al hacer clic de la pestaña abres el recordsetclone del subformulario de la pestaña.

Set rst = Me!elControlSubformulario.Form.RecordsetClone

Luego recorres los campos del registro buscando el nombre en concreto

For Each fld In rst.Fields
  If fld.Name = "NombreBuscado" Then
    ' Aqui los cálculos
  End If
Next

Necesitas declarar rst como DAO.Recordset y fld como DAO.Fields


Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
JuanRB Ver desplegable
Asiduo
Asiduo
Avatar

Unido: 06/Mayo/2004
Localización: España
Estado: Sin conexión
Puntos: 324
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita JuanRB Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 11/Diciembre/2024 a las 12:38
Xavi, estamos de vuelta tras haber intentado desarrollar tu propuesta con el siguiente código

Private Sub Reparto_1_Click()
Dim rst As DAO.Recordset
Dim fld As DAO.Fields

Set rst = Me!Frm_RRHH_Empleados_1.Form.RecordsetClone   'Nombre del subformulario: Frm_RRHH_Empleados__1

For Each fld In rst.Fields
  If fld.Name = "Reparto_1" Then                        'Nombre del control de cada registro para hacer los cálculos
    Reparto_1 = Presupuesto / Contador * Jornada        'Calcula presupuesto / contador (el número de registros que tiene el subformulario) * % jornada
  End If
Next
End Sub

Pero no me funciona como deseo, el procedimiento debe de ir al campo Reparto_1 de todos los registros para realizar el cálculo en cada uno de ellos.
<font color=BLUE>Las oportunidades que tu pierdes, otro las aprovecha.[/COLOR]
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable