Access - access 2000 codigo para iraRegistro

 
Vista:

access 2000 codigo para iraRegistro

Publicado por carlos (2 intervenciones) el 04/12/2004 20:15:31
hola, ojalá alguien me pueda ayudar, tengo un formulario y quiero que cuando se habra me mande en pantalla un registro de la base al azar y cuando yo lo vuelva a abrir me mande otro registro diferente y asi susesivamente, no se si alguien conoce una macro o codigo que sea IraRegistro al azar? porfa es urgente, saludos dios los bendiga.
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 Alejandro

Mostrar registros aleatorios al abrir un formulario

Publicado por Alejandro (4142 intervenciones) el 19/05/2023 19:52:59
Para lograr que un formulario muestre un registro aleatorio cada vez que se abra, puedes utilizar código VBA en el evento "Al cargar" del formulario. A continuación se muestra una solución que puedes seguir:

1. Abre tu base de datos de Access y abre el formulario en el que deseas implementar esta funcionalidad.
2. Ve al modo de diseño del formulario.
3. Haz clic derecho en el fondo del formulario y selecciona "Propiedades" para abrir la ventana de propiedades del formulario.
4. Ve a la pestaña "Eventos" de las propiedades del formulario.
5. Encuentra el evento "Al cargar" y haz clic en el botón con los puntos suspensivos (...) para abrir el editor de código VBA para ese evento.

Dentro del editor de código VBA, agrega el siguiente código:

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
Private Sub Form_Load()
    Dim rs As DAO.Recordset
    Dim totalRegistros As Long
    Dim registroAleatorio As Long
 
    ' Abre el recordset con los datos del formulario
    Set rs = Me.RecordsetClone
 
    ' Obtiene el número total de registros
    totalRegistros = rs.RecordCount
 
    ' Genera un número aleatorio para seleccionar un registro
    registroAleatorio = Int((totalRegistros * Rnd) + 1)
 
    ' Mueve el recordset al registro aleatorio
    rs.MoveFirst
    rs.Move registroAleatorio - 1
 
    ' Establece el registro aleatorio como el registro actual del formulario
    Me.Recordset.Bookmark = rs.Bookmark
 
    ' Cierra el recordset
    rs.Close
    Set rs = Nothing
End Sub

Este código utiliza un recordset clonado del formulario para obtener el número total de registros y, luego, genera un número aleatorio para seleccionar un registro al cargar el formulario. Luego, mueve el recordset al registro aleatorio y establece ese registro como el registro actual del formulario.

Guarda y cierra el editor de código VBA.

Ahora, cuando abras el formulario, se mostrará un registro aleatorio cada vez. Cada vez que abras el formulario nuevamente, se mostrará un registro diferente de forma aleatoria.

Espero que esta solución te sea útil. ¡Buena suerte!
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