Hacer plantilla en access 2003
Os comento. Necesito hacer como una especie de plantilla en access, donde pueda elegir luego los campos que quiera y me haga la suma de ese campo. ¿Habría alguna forma de hacerlo?
1 Respuesta
¿Podrías explicarme un poco más?
Supongo que tendrás una tabla con varios campos tanto de texto como numéricos y lo que quieres es poder elegir esos campos numéricos y que te sume la cantidad... ¿es así?
Gracias Angeles, por contestar.
Intentaré explicarme un poco mejor. Lo que deseo es crear una plantilla o bien en un formulario o en un informe, donde pueda hacer como una especie de tabla de referencias cruzadas, dejando los campos preparados y que luego pueda elegir los campos que desee de todas las tablas que tengo en mi bbdd.
Espero haberme explicado mejor....
¡ De TODAS las tablas !
Creo que para hacer una plantilla, podríamos hacer que el campo fuese variable y el nombre de la tabla, también, pero... tendríamos que hacer, por ejemplo con cuadros combinados o cuadros de lista, para elegir un campo perteneciente a una tabla, esto lo tendríamos que hacer para cada tabla, ya que supongo que los campos serán distintos según la tabla que elijamos.
Es decir, tendríamos un cuadro combinado/lista en el que seleccionaríamos una tabla, según la tabla elegida nos saldría otro cuadro combinado/lista en dónde pudisemos elegir el campo que queramos,
Esto es lo que se me ocurre, hacer algo tan general... no es fácil.
Muchas gracias Angeles, la verdad que lo estoy viendo muy difícil. Podrías orientarme como hacer un cuadro de lista para que pueda hacer esto, porque no encuentro la opción de hacer lo que me dices...
Gracias
Estoy con ello, haciendo algunas pruebas... la verdad es que nunca me lo había planteado, es posible que lo integre como supuesto en la página.
Cuando consiga algo... te lo comento.
Ya casi lo tengo, me están llamando para comer... luego te explico.
Vamos a hacer el supuesto de que quieras sumar cualquier campo de cualquier tabla.
La idea es crear un cuadro combinado (o un cuadro de lista, lo que te más te guste, ya que un cuadro combinado y un cuadro de lista funcionan exactamente igual) para elegir la tabla que quieras, después, según la tabla elegida, que salgan en un cuadro de lista los campos que quieras visualizar pertenecientes a esa tabla y al hacer click en uno de esos campos te visualice, en un cuadro de texto, el resultado de la suma de las cantidades del campo elegido.
Supongamos que las tablas y sus campos se llaman:
Tabla1 (Campo11, Campo12 y Campo13)
Tabla2 (Campo21, Campo22 y Campo23)
Tabla3 (Campo31, Campo32 y Campo33)
Creamos un formulario independiente, es decir no lo bases en ninguna tabla ni consulta.
Insertamos un cuadro combinado, en las propiedades de ese cuadro combinado:
Nombre: selTabla
Tipo de origen de la fila: Lista de Valores
Origen de la fila: Tabla1; Tabla2; Tabla3
*** El origen de la fila de un cuadro combinado/de lista se puede llenar de distintas formas, basado en una tabla, como lista de valores (escribiremos en el origen de la fila los valores que queramos) o como lista de campos.
Creamos un cuadro de lista, en sus propiedades:
Nombre: ListaCampos
Tipo de origen de la fila: Lista de Valores
*** El origen de la fila, es decir las opciones que queremos que se visualicen, lo dejamos en blanco, ya que dependerán de la tabla que hayamos elegido anteriormente, para dar los valores del origen de la fila (RowSource) vamos a las propiedades del cuadro combinado selTabla, en la acción Al hacer clic picas en la flecha de la derecha y eliges Procedimiento de Evento, después picas en el cuadrado de los ... para abrir el código y pones:
Private Sub selTabla_Click()
Form!txtResultado.Visible = False
Select Case Form!selTabla.Value
Case "tabla1"
Form!ListaCampos.RowSource = "Campo11;Campo12;Campo13"
Case "tabla2"
Form!ListaCampos.RowSource = "Campo21;Campo22;Campo23"
Case "tabla3"
Form!ListaCampos.RowSource = "Campo31;Campo32;Campo33"
End Select
Me.Refresh
End Sub?
Es decir, según el valor que hemos seleccionado en el cuadro combinado selTabla daremos el origen de la fila del cuadro de lista ListaCampos.
Creamos un cuadro de texto, que llamaré txtResultado para visualizar la suma del campo y tabla elegidos, en sus propiedades pondremos:
Visible: No
Volvemos al cuadro de lista ListaCampos y en sus propiedades, en la acción Al hacer clic ---> Procedimiento de evento ---> ponemos el código:
Private Sub ListaCampos_Click()
Form!txtResultado.Value = DSum(Form!ListaCampos.Value, Form!selTabla.Value)
Form!txtResultado.Visible = True
Me.Refresh
End Sub?
Es decir, el valor del cuadro de texto txtResultado lo igualamos al la suma del campo que hemos elegido en ListaCampos de la tabla que hemos elegido en selTabla. Por último hacemos visible el cuadro de texto y refrescamos el formulario.
¿?
- Compartir respuesta