domingo, 4 de abril de 2010

Un FORMULARIO de datos en Excel.

Explicaré brevemente una herramienta poco utilizada de Excel como son los Formularios de datos; y me estoy refiriendo al Formulario estándar de Excel (no a los Controles de formularios personalizados). Es una herramienta muy sencilla, pero muy práctica para todos aquellos que en algún momento hemos tenido que completar registros en una base de datos de Excel.
Debemos saber que, si trabajamos con Excel 2007, lo primero que deberemos hacer es extraer a nuestra Barra de acceso rápido el Comando Formulario..., o bien llamarlo con el teclado, al igual que hacíamos en la versión 2003 (es decir, pulsando ALT+t+f).
Claro, que antes de ejecutar esta herramienta tendremos que tener configurada nuestra base de datos, esto es, al menos deberemos tener nuestra cabecera de datos (nuestros rótulos); ya que en caso contrario nuestro Formulario de datos no funcionará...

Supongamos que tenemos una pequeña base de datos de contactos, compuesto de los siguientes campos: Nombre, Apellidos, Teléfono, Dirección y Edad:


si nos posicionamos sobre alguna de las celdas que componen nuestros rótulos o cabecera, podremos llamar al 'formulario de datos' como antes se ha comentado.

Como aún no tenemos ningún registro, Excel nos preguntará cómo tiene que tomar esa primera fila...


Normalmente accederemos a nuestro 'formulario de datos' sin problema, ya que lo habitual es tener algún registro, y por tanto varias filas de datos...
En este caso, simplemente Aceptaremos, ya que queremos tener la primera fila como rótulos y no como datos.

Inmediatamente se abre la ventana de trabajo del formulario:


y observamos un formulario con los nombres de los rótulos y unos campos editables desde donde poder introducir o modificar nuestros registros; además de diferentes opciones de búsqueda de datos.
Esta herramienta nos ofece además la posibilidad de filtrar registros de nuestra base de datos pulsando el botón de Criterios, utilizado sobre los diferentes campos editables habilitados, combinando los distintos comodines (* ó ?).

La limitación de esta herramienta es que los elementos filtrados sólo son visibles desde el propio formulario, es decir, no nos permite visualizar un listado filtrado sobre nuestra Hoja de cálculo, como la herramienta de Filtro.

23 comentarios:

  1. Hola, yo lo que quisiera saber es como escribir el codigo de este formulario, para asi poder manejar mi captura de datos de acuerdo a mis necesidades. No se programación, pero en alguna ocasión, siguiendo instrucciones en internet, logré contruir un formulario, en el cual yo determine que columnas son las que se incluyan en el formulario, o sea quisiera hacer este mismo formulario pero a partir de su codigo o si se dispone del codigo que me lo pasen para yo modificarlo a mis necesidades. El formulario que viene en excel presenta otras limitaciones, como por ejemplo no ac acepta más de 32 rotulos de datos, los textos estan limitados, etc.

    ResponderEliminar
  2. Hola Alexxxxo,
    intentaré recopilar todas tus dudas en una entrada para subirla al blog en las próximas semanas.
    Un saludo y gracias por las aportaciones que complementan el post.

    ResponderEliminar
  3. Como puedo hacer para utilizar el formato condicional, que evalue una celda y cambie el color de otra celda de otra columna. Ej: si un promedio es mayor que 7 cambie el color de la celda donde indica "aprobó". Gracias.

    ResponderEliminar
  4. Hola,
    puedes acceder a
    http://excelforo.blogspot.com/search/label/Formato%20condicional
    donde poder ver diferentes ejemplos de cómo realizar lo que quieres.
    Para consultas más detalladas, si no te sirve lo explicado, envía un correo a
    excelforo@gmail.com
    Slds

    ResponderEliminar
  5. Hola, me gustaría saber si has podido resolver mi duda de abril 10, lo que necesito es el codigo de un command buton que me permita ir hacia atras en un formulario o hacia adelante, es decir los botones para recorrer mis registros en el formulario, gracias

    ResponderEliminar
  6. es decir el codigo de los botones del ejemplo grafico que pusiste correspondientes a BUSCAR SIGUIENTEW, BUSCAR ANTERIOR,CRITERIOS,ojala me puedas ayudar

    ResponderEliminar
  7. Hola alexxxxo,
    lamento no haberte contestado, pero estuve buscando y no encontré nada que pudiera servirte.

    Lo siento y suerte con tu búsqueda, seguro que lograrás hacer lo que quieres.
    Slds

    ResponderEliminar
  8. GRACIAS excel foro.
    Esta informacion me cirbio de mucha ayuda!!!!
    ;)

    ResponderEliminar
  9. Nesecito saber los beneficios al utilizar un formulario.

    por favor es para la tarea.

    ResponderEliminar
  10. Hola
    Me podrian ayudar como programar la fecha en una macro

    ResponderEliminar
  11. Hola,
    los beneficios de emplear un formulario consisten básicamente en comodidad y facilidad a la hora de introducir nuevos datos, también aporta algo de funcionalidad a la hora de filtrar información, aunque esta no es su principal virtud.
    Slds

    ResponderEliminar
  12. Buenas noches,
    para programar en VBA fechas, puedes emplear la instrucción Date que te devuelve la fecha que tengas definida en el sistema, o Time si necesitas la hora, o también Now.
    Slds

    ResponderEliminar
    Respuestas
    1. La respuesta que me dieron ayer de los beneficios al utilizar un formulario, me ayudo muchooo.

      Gracias por la ayuda;)

      Eliminar
  13. Podria utilizar la segunda fila para insertar el formulario? o solamente se puede utilizando la primera fila?

    ResponderEliminar
    Respuestas
    1. Hola, que tal, TL?
      Espero estés bien.
      Para emplear el formulario estándar de Excel es suficiente tener una celda activa sobre el origen de datos. Él entenderá como rótulos/cabecera de los campos, la primera fila.
      Un atento saludo

      Eliminar
  14. Buenas tardes. En lugar, muchas gracias por su encomiable labor.

    Sólo tengo una duda, cómo podría hacer (en excel 2003) para insertar un botón en la hoja que al abrirlo me apareciera el formulario de datos.

    Espero su respuesta. Muchas gracias por todo

    ResponderEliminar
    Respuestas
    1. Hola Francisco,
      muchas gracias!!
      Entiendo que hablamos del formulario de datos que se explica en este post. Si es así, la macro que buscas sería:
      Sub Mostrarformulario()
      ActiveSheet.ShowDataForm
      End Sub

      Luego Inserta un botón de comando y le asignas dicha macro.
      Saludos cordiales

      Eliminar
    2. Hola Ismael!!,

      Acabo de ver su respuesta. Eso es lo que quería. Enormemente agradecido, no sabes lo bien que me va a venir su ayuda.

      Una vez más, muchas gracias por todo. Espero que le vaya muy bien en todo. Un cordial saludo

      Eliminar
  15. Respuestas
    1. Hola Jhon,
      ¿qué es lo que no entiendes de esta herramienta estándar??

      Eliminar
  16. Hola como puedo crear un formulario donde sean las filas los campos a rellenar ejempl, nombre importes etc y los resultados aparezcan en la columna siguiente en el mismo orden. El motivo es por que necesito una plantilla para facturacion y ha de ir en ese sentido. Los rangos en una misma columa y los datos introducidos en otra columna paralelos a su rango .Gracias

    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.