Crear userform de introduccion de datos, busqueda, modificac

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Crear userform de introduccion de datos, busqueda, modificac

Notapor frank89 » 08 Ago 2011 07:18

Hola,

No tengo mucha idea de VBA pero he empezado a crear un userform y ahora me he quedado encallado. He creado un archivo excel con varias columnas y he conseguido crear un userform con el cual introducir unos datos que yo le escribo y posteriormente una vez finalizada una fila, este vuelve al inicio dejando todos los huecos en blanco de nuevo y desplazando la fila escrita en el excel anteriormente hacia abajo.

Os adjunto el excel para ver si me podriais hacer algunas modificaciones o en su defecto indicarme como hacerlas aunque no entiendo mucho de VBA y necesitare un poco paso a paso:

1-Quiero poder controlar la introduccion de datos de manera que me pueda desplazar desde el formulario fila por fila con algun tipo de flechas (comando) para una vez encima poder modificar la fila o ponerme en una fila en blanco y introducir datos.

2-Quiero saber si seria posble no introducir siempre datos en la primera fila y desplazar las demas hacia abajo. Me gustaria que se añadiera en la ultima fila o en su defecto yo me pudiera situar alli para empezar a introducir datos y en cuanto introdujera una fila me saltara automaticamente a la segunda.

3-Me gustaria tener 2 userforms. Uno para introduccion de datos(ya creado a falta de modificaciones citadas anteriormente) y uno para modificacion y busqueda de datos(se habria de crear y no se como deberia hacerlo). Estos irian asociados a dos botones de formularios que he creado ya en mi excel a los cuales les he asignado una macro con lo cual cuando clico encima el userform se abre.


Se que quizas pido demasiado pero me urge mucho y agradeceria infinitamente su ayuda.

Gracias por adelantado!

Atentamente,

Fran


PD: les adjunto el archivo excel
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor Antoni » 08 Ago 2011 13:42

Hola:

He adaptado un formulario que ya tenía, te explico.

Vale para cualquier hoja en que, la cabecera empiece en B6 y los datos empiecen en B7.

No puede haber filas vacías en el rango de datos.

Se pueden Añadir, modificar, eliminar y consultar registros.

Si editas el formulario, veras que no están ni las etiquetas, ni los textbox, se crean en tiempo de ejecución (es exactamente lo mismo que si los dibujaras a mano) para poderlos tratar como Array y así el código se reduce muchisimo, verás que incluso todo completo contiene menos código que el que tu has adjuntado. Si tienes alguna duda, lo comentas.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Antoni
Miembro Frecuente
Miembro Frecuente
 
Registrado: 22 Dic 2009 04:58
Ubicación: GALICIA (ESPAÑA)

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 08 Ago 2011 13:57

Hola,

Muchisimas gracias por el formulario! Tiene muy buena pinta! ;) Entonces no lo creas con codigos? como lo vas haciendo pues?

El formulario me vale a la perfeccion a falta de dos cosas que me gustaria añadirle:

-Añadir un boton de comando "Buscar" con el cual escribiendo alguna de las variables de una fila, me localizara aquella fila.

-Añadir en algunas de las variables que se han de añadir a una fila algun tipo de pestaña ya que hay dos o tres variables que tienen solo 3 opciones con lo cual me facilitaria la introduccion de datos. Es decir, la mayoria de datos de la fila son independientes una de otra, pero hay unos que son iguales para la mayoria de las filas y esos me gustaria ponerlos a modo de pestaña desplegable. Seria eso posible?

Muchas gracias por la ayuda! Sois unos cracks! ;)

PD: no entiendo mucho de estos foros y nose donde he de valorar positivamente la consulta asi que agradeceria me lo dijeras. ;)
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 08 Ago 2011 14:12

Por cierto he mirado el formulario y como podria añadir una columna nueva? porque se la añado al excel directamente y me crea el hueco para introducir la variable de la nueva columna y me la añade tambien en el excel pero no puedo visualizarla en la imagen que me sale de las columnas en el formulario.

A ver si me podrias solucionar esto porque he estado intentando modificarlo yo y no soy capaz..

Muchas gracias por avanzado!
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor elcibernauta08 » 08 Ago 2011 14:28

Interesante aporte Antoni ... Graxx por compartirlo
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
elcibernauta08
Miembro Frecuente
Miembro Frecuente
 
Registrado: 02 May 2011 20:25
Ubicación: Yucatan, Mexico

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor kurupc » 08 Ago 2011 16:51

Hola frank89 me permití modificar un poco el excelente aporte del Maestro Antoni y en el adjunto creo que tienes lo que estas solicitando frank89, realicé algunos pequeños cambios y está todo comentado en el código, te todas maneras si tenes alguna duda, no tengas temor en realizar tu consulta.

Saludos desde Corrientes, Argentina.
PD: Antoni muchas gracias por el excelente aporte.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
kurupc
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Abr 2010 04:18

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor kurupc » 08 Ago 2011 16:58

para frank89 me expresé mal en el envío anterior, lo que te soluciona el archivo adjunto es nada más lo que solicitabas a lo último, es decir que al agregar una columna lo agregue automaticamente en el formulario.
Las otras cosas que solicitabas no las contemplé, me dediqué a lo más fácil (y a la capacidad de mis conocimientos) de todos tus pedidos. Lo otro no te prometo nada pero lo voy a intentar.
Disculpá.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
kurupc
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Abr 2010 04:18

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 08 Ago 2011 18:27

Hola!

Muchisimas gracias por la gran ayuda!

Kurupc no te preocupes ya me has sido de gran ayuda. Ojala se puedan realizar los cambios de los que hemos hablado antes sobre como hacer pestañas desplegables en algunos huecos y sobre como poner un comando "buscar" en el userform, pero si no se puede la intencion es lo que cuenta y te estoy muy agradecido.
El tema es que lo que me has enviado no me compila, exactamente en este tramo:

Private Sub ActualizarLista()
'Obtenemos la primera fila libre y actualizamos la lista
ActiveSheet.Range("B7").Select


Pone: Error de compilacion. No se ha definido variable.

Nose si he echo algo mal al arrancarlo porque me estoy introduciendo en el programa y aun no lo se interpretar mucho. Agradeceria me ayudaras a corregir el error de compilacion.

Muchas gracias por avanzado y a ver si hay suerte y entre tu y toni podeis solucionar las demas dudas que tengo en el tema de las pestañas y el boton de busqueda. Os estoy muy agradecido.

Atentamente,

Fran
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor kurupc » 08 Ago 2011 19:01

Hola Frank89 estuve mirando lo que te envié, yo trabajo en el Excel 2010 y alli lo corrí y no me dió error, entonces lo guardé como Oficce 97-2003 y lo abrí con el Oficce 2003 y allí me dió el error que comentas,
eso da por que no definí la variable UltColumna lo único que tenés que agregar es la siguiente línea...

Dim UltColumna As Integer

eso lo haces en esa macro y te quedaría así...

Private Sub ActualizarLista()
Dim UltColumna As Integer

'Obtenemos la primera fila libre y actualizamos la lista
ActiveSheet.Range("B7").Select
Do Until ActiveCell = "": ActiveCell.Offset(1, 0).Select: Loop
FilaLibre = ActiveCell.Row
.
.sigue todo igual

Igual te adjunto el archivo que me funcionó en el Oficce 2003.

Con respecto a buscar en el formulario si ves en la página bien arriba a la derecha hay un comando buscar y si colocas UserForm y le das buscar trae cualquier cantidad de referencias y mirando entre ellas encontré estos links que tal vez te podrían servir..

en este link entre los comentarios citan a un Formulario de Abrhan Valencia que te puede servir
http://www.todoexcel.com/foro-excel/post67140.html?hilit=UserForm#p67140

y el link al formulario de Abrahan Valencia es...
http://cid-4509feb32392c17c.office.live.com/self.aspx/Excel%20e%20Info/Formulario-Abraham%20Valencia.zip

Y una solución del gran maestro Antoni
que no se si resuelve tu problema pero seguro te ayudará a profundizar más en los conocmientos de UserForm y Buscar...
http://www.todoexcel.com/foro-excel/post67025.html?hilit=UserForm#p67025

Bueno esto todo lo que por el momento obtuve, me gusta que quieras solucionar aprendiendo es la politica del foro.
Un abrazo y saludos desde Corrientes, Argentina.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
kurupc
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Abr 2010 04:18

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 09 Ago 2011 05:09

Hola de nuevo!

Gracias por el archivo corregido! funciona fenomenal. He estado viendo los links que me pasaste y me parecen genial.

En cuanto a busqueda el formulario de Abraham Valencia i el de Antoni son lo que ando buscando! =D el problema es que estoy intentando aplicarlo a mi userform i no me acaba de funcionar. Vosotros que dominais del tema no podriais poner los codigos en un momento? os estaria infinitamente agradecido! :wink:

En cuanto al tema de las pestañas que hablabamos anteriormente el formulario de consulta de tareas de Antoni esta genial! Es justamente lo que busco! Podrias ayudarme Antoni a hacer esto de las pestañas en algunos de los huecos del formulario para seleccionar la variable rapidamente? Seria de gran ayuda.

Muchas gracias por adelantado a los dos y a ver si hay suerte y me podeis echar una mano!

Un saludo,

Fran
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor Antoni » 09 Ago 2011 15:20

Hola a todos:

He añadido a la versión corregida por kurupc, al que agradezco su colaboración:

La hoja "Listas", en ella se pueden poner los valores de aquellas columnas con valores delimitados.
El formulario detecta de forma automática que columnas se les debe asociar un combobox en lugar de un textbox.

Se ha añadido un sistema de búsqueda. La búsqueda puede realizarse desde el inicio, hacía adelante y hacía atrás. Se controla el principio y final de búsqueda con un mensaje.

Puede realizarse la búsqueda en cualquier columna. La comparación del texto se realiza en cualquier parte de la columna, y no se distingue entre mayúsculas y minúsculas.

Saludos.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Antoni
Miembro Frecuente
Miembro Frecuente
 
Registrado: 22 Dic 2009 04:58
Ubicación: GALICIA (ESPAÑA)

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor kurupc » 09 Ago 2011 17:35

Muchas Gracias MAESTRO!!!!!!!!!!!!! perdón por las mayúsculas pero se merece señor Antoni, gracias por compartir tus conocimientos con todos nosotros, Excelente solución su aporte.
Un saludo desde Corrientes, Argentina.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
kurupc
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Abr 2010 04:18

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 09 Ago 2011 18:42

UAOOOOOO! Fantastico! =D no esperaba ni en el mejor de los casos un formulario tan bueno! es genial muchisimas gracias! :D :D

Lo unico que no entiendo es el tema de las pestañas como funciona. He probado de hacer una columna nueva y ir añadiendo filas a traves del formulario y despues de unas cuantas repeticiones de diversas palabras no me crea la pestaña, a que es debido esto?

Despues me gustaria saber si es posible (se que ya estoy abusando de consulta pero me gustaria perfeccionarlo un poco mas..) si podria poner otra pestaña de busqueda como la que hay y buscar sobre dos columnas a la vez,es decir, poder buscar una fila que en la primera columna tenga "x" y en la segunda tenga "y". Solo seria duplicar la que hay y que hicieran una busqueda conjunta o si no se pone ningun dato en la otra que pudiera buscar solo en una columna como ahora, seria eso posible?

Se que estoy pidiendo mucho pero quiero crear un buen sistema de introduccion y manipulacion de datos ya que quiero que funcione bien y que me dure mucho tiempo. No esperaba que me pudieran ayudar tanto por aqui, muchisimas gracias de nuevo por lo echo! son unos cracks! y a ver si es posible lo que les he comentado.

Muchas gracias por avanzado de nuevo. :wink:

Saludos,

Fran
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor kurupc » 10 Ago 2011 01:18

Para Frank89 lo de las pestañas trabaja así...Antoni creó una hoja que se llama Listas y allí estan todas las columnas que tenes en tu hoja de trabajo que se llama hoja1 (donde cargas los datos), bueno en la hoja Listas, si vos por ejemplo decis que la columna Prueba (la columna K) va a tener únicamente estos valores SI y NO entonces en la celda K2 cargas el valor SI y en la celda K3 el valor NO (es un ejemplo nomás) y hacelo manualmente SIN usar el formulario de carga!!!
a esos valores se llaman elementos de una lista y es lo que te va a aparecer cuando te vayas a la hoja1 (la hoja de trabajo donde se cargan los datos) y abras el hermoso y eficiente formulario de carga vas a ver que el campo Prueba ya no es más un TextBox sino que se convirtió por arte de Antoni en un ComboBox precisamente con los valores SI y NO al desplegarlo, así entonces utilizá la hoja Listas para cargar lo que pedías, que tenias valores que se repetían, lo cargás en la columna correspopndiente.

Una aclaración más si agregas una columna en la hoja1 debes agregar también una columna con el mismo nombre y en la misma posición en la hoja Lista o sinó se van a desplazar los contenidos de las listas desplegables de los ComboBox en el formulario.

Frank89 si tenés alguna duda no hay problemas, en lo que entienda y te pueda ayudar contá conmigo o sinó siempre alguien nos da una gran ayuda.

Un saludo desde Corrientes, Argentina.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
kurupc
Miembro Frecuente
Miembro Frecuente
 
Registrado: 12 Abr 2010 04:18

Re: Crear userform de introduccion de datos, busqueda, modif

Notapor frank89 » 10 Ago 2011 06:03

Hola!

Va genial el formulario, es una pasada! :D

Ahi van los retoques finales y creo que con esto quedara listo mi formulario:

-A ver si es posible lo que he comentad anteriormente ahora Antoni: "Despues me gustaria saber si es posible (se que ya estoy abusando de consulta pero me gustaria perfeccionarlo un poco mas..) si podria poner otra pestaña de busqueda como la que hay y buscar sobre dos columnas a la vez,es decir, poder buscar una fila que en la primera columna tenga "x" y en la segunda tenga "y". Solo seria duplicar la que hay y que hicieran una busqueda conjunta o si no se pone ningun dato en la otra que pudiera buscar solo en una columna como ahora, seria eso posible?"

-Se puede realizar un recuadro de alerta cuando quieras modificar,borrar o añadir una linea a traves del formulario donde diga: "Estas seguro?" o algo parecido y puedas poner "Si" o "No"?

-Me gusta mucho la opcion de que cuando añadas una columna nueva en el excel, esta se añada automaticamente en el formulario para que puedas introducir datos; pero me gustaria saber si es posible añadir algunas columnas que no se añadan al formulario. Esto solo me gustaria que pasara con algunas y no con todas ya que la opcion de que si añado una nueva se me ponga en el formulario me gusta mucho ya y es solo para algunas que no me va bien.

A ver si es posible cracks! :wink:

Muchas gracias por adelantado y por todo en serio :D Saludos,

Fran
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
frank89
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Ago 2011 06:03

Siguiente

Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 6 invitados