Macros y combobox con Visual Basic

Hola, quisiera pedir si alguien me puede ayudar a hacer el programa en Excel que necesito ya que llevo bastante intentando y me sale siempre algún error...esto es lo que tengo: varios libros en excel (2009, 2008, 2007... Etc son libros con información por año) y cada libro tiene varias hojas, cada hoja es una maquina (maquina1, maquina2... Etc) y en cada hoja hay un listado de equipos, con un historial con las veces que se han arregaldo...y lo que necesito es: Una macro que debe estar en un libro aparte y vacío que solo contenga un botón el cual llame a una Userform y que ésta tenga 3 combobox, la primera que diga "seleccione año" (que implica seleccionar el libro con el historial de ese año) luego al ingresar el año la combobox2 tiene que decir "seleccione maquina" y ésta combobox2 solo se debe llenar con las maquinas del respectivo año, luego la combobox3 debe decir "seleccione equipo" y ésta se debe llenar solo con los equipos de la maquina seleccionada (no con todos los que existen), el punto es que los equipos se repiten tantas veces como se haya arreglado el equipo y a mi me interesa que en la lista del combobox3 solo aparezca el nombre del equipo, no que salga todas las veces que se ha arreglado (osea, sin repetir). Y por ultimo cuando la persona seleccione el equipo toda la información seleccionada, osea: año(libro), maquina(hoja) y equipo(celdas) se muestre en la hoja 2 del libro vacío donde se esta haciendo la macro, la idea es que la macro tome lo que el usuario eligió y lo seleccione y copie del libro original donde esta toda la información y lo muestre en el libro en blanco, así el usuario puede ver la información que necesita pero no puede meterse al libro original ni modificarlo.
¿Se entendió? (Puedo mandar el archivo si es necesario)... Yo ya tengo un programa con algunas cosas hechas pero no logro que haga exactamente todo lo que necesito, si alguien me puede ayudar lo agradezco infinitamente.
Saludos

1 Respuesta

Respuesta
1
Estoy en ello, ya te contare... como va...
Hola, me sirvió muchísimo el programa! Sólo le hice unos cambios y me funcionó a la perfección, el asunto es que si el usuario apretá "x" para cerrar el UserForm queda abierto el archivo original desde donde se copian los datos y eso es lo que no puede pasar por que tendrían acceso al fichero que tiene toda la información y podrían hacer cambios problemáticos. Con éstos comandos sé que se puede bloquear la "x" y habilitar un botón para salir:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then
Cancel = True
End If
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Sub
... ¿Pero cómo hago para que al apretarlo vuelva al inicio donde está el botón de ingreso y que quede cerrado el fichero con la información original?
Gracias de antemano. Saludos
Chao
Ya te he mandado de nuevo el fichero con las macros para no poder cerrar el formulario desde la "X"
Suerte
Hola muchas gracias por todo, me ha servido montones... ahora quería preguntarte como lo puedo hacer para que cuando la información seleccionada se pegue en la hoja en blanco se pegue con el mismo formato de la hoja inicial, ya que se pega toda desordenada y hay que empezar a arreglar todo de nuevo.
Me ayudas por favor, por que la idea es que el usuario vea lista la información y no que tenga que estar arreglándola para poder verla.
Bueno gracias de antemano.
Ya te he mandado el fichero modificado. Te he añadido dos lineas en el combobox para que el formato de las columnas D:F
Cells.entireColumn.autofit
Columns("D:F").ColumnWidht = 50
Saludos (recuerda cerrar y valorar)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas