Access - Definir nombre control con variable

 
Vista:

Definir nombre control con variable

Publicado por Rodrigo Molina (3 intervenciones) el 08/11/2017 10:25:08
Tengo una tabla Auxiliar con Id autonumérico y un campo A numérico. En un formulario tengo 6 cuadros de texto independientes con valores numéricos, llamados A1, A2, A3, etc, Lo que pretendo es que al pulsar un botón en el formulario me inserte los valores de los cuadros de texto en el campo A de la tabla. Lo intento con
dim i as integer
for i=1 to 6
docmd.runsql"insert into auxiliar(a)values(y aquí el problema,¿como definir el control A&i
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 Oscar Pérez
Val: 198
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Definir nombre control con variable

Publicado por Oscar Pérez (80 intervenciones) el 08/11/2017 11:53:23
Buenos días!

Cómo hacer referencia a un control a través de una variable es lo más práctico que he visto nunca en access... Y me ha permitido montar formularios bastante currados XD

Posiblemente habrá varias formas de hacerlo, pero yo te voy a poner la que suelo utilizar, usando la propiedad controls del objeto me (que te permite hacer referencia a cualquier control dentro de un formulario) y como me funciona perfectamente me quedo con ella, aunque estaré encantado de ver otros puntos de vista.

Es lo que encuentro más interesante e enriquecedor de estos foros, que siempre alguién te demuestra otra forma de hacer las cosas... :)

Te lo pongo del tirón, espero que te sirva...

1
2
3
4
5
6
7
Dim i as integer
Dim lbl as control
 
For i=1 to 6
     Set lbl = Controls("A" & i)
     Docmd.runsql("insert into auxiliar(a) values (" & lbl.Value & ")")
Next i

Y para nombres de variable tipo "01", "02", etc... Incluyendo tantos ceros como haya en el nombre de variable

1
set lbl=Controls("A" & Format(i,"00")) & ")")

Para configurar automáticamente los botones en una aplicación desde los datos de una tabla es muy práctico, las etiquetas las llamo Opcion1, Opcion2, etc... Leo la tabla y en el bucle hago el set lbl=controls("Opcion" & i), luego le cambio el nombre con lbl.Caption = rs!TextoOpcion1 y voilá!!! :P

Saludos!
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

Definir nombre control con variable

Publicado por Rodrigo Molina (3 intervenciones) el 08/11/2017 12:31:02
Ahora mismo no estoy registrado, pero eso no es óbice para que te quede inmensamente agradecido. Me estaba volviendo loco. Por cierto, tuve que ponerlo como
set lbl=controls(A&i), así a palo seco y funciona de maravilla.
Muchas gracias
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
Imágen de perfil de Oscar Pérez
Val: 198
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Definir nombre control con variable

Publicado por Oscar Pérez (80 intervenciones) el 08/11/2017 13:37:00
Buenas!

De nada, gracias a ti...

Me alegro :) Ya casi lo tenías al formular la pregunta... (y aquí el problema,¿como definir el control A&i) jajajaja XD

Saludos!
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

Definir nombre control con variable

Publicado por Rodrigo Molina (3 intervenciones) el 08/11/2017 14:18:29
Pues no sabría decirte porque lo ponía tal cual A&i y no funcionaba pero copié lo tuyo de dejar espacio entre A y & y espacio ente & y i y funciona de fábula.
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

Definir nombre control con variable

Publicado por Ruben (1 intervención) el 08/11/2017 16:47:00
Hola, mi nombre es Ruben y soy responsable del depto de Calidad de una metalurgica.
Estamos buscando a que pueda darnos una mano en unos cambios a una base access que tenemos.
El que este interesado, les dejo mi correo electronico para ponernos en contacto.
La empresa se encuentra en Sarandi, partido de Avellaneda.

Muchas gracias
Ruben
[email protected]
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
Imágen de perfil de Oscar Pérez
Val: 198
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Definir nombre control con variable

Publicado por Oscar Pérez (80 intervenciones) el 09/11/2017 08:26:45
Buenos días!

Te animo a que abras un nuevo hilo a ver si entre todos podemos ayudaros desde el foro... Cuéntanos un poco lo que necesitas...

Saludos!
Óscar.
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