Como ya hemos comentado en varias ocasiones, existe la posibilidad de emplear reglas de validación para mostrar listas desplegables.
El problema es ese mensaje de error que dice que no se pueden emplear datos de otras hojas o libros para los criterios de validación.
Sin embargo esto no es del todo correcto, porque sí hay una manera de tomar los datos de otra hoja. El truco consiste en haber definido un nombre para los datos que queremos que aparezcan en la lista.
Si hacemos referencia a este nombre como origen de los datos de la lista sí funcionará y aparecerán los valores de la otra hoja en nuestra lista de validación. No olvides poner el signo igual antes del nombre.
Esto resuelve el problema de tener que poner unas listas auxiliares en la misma hoja donde tenemos los datos, lo que no queda muy elegante pese a ser el modo en que los programadores de Excel quisieron que funcionase. Con el empleo de nombres podemos tener una hoja auxiliar con todas las listas de valores auxiliares que aparecerán en los desplegables, mientras que la hoja donde se introducen los datos queda limpia y sólo contiene las celdas donde se introducirán los datos.
En el archivo adjunto tienes un ejemplo de esto que te cuento.
Adjunto | Tamaño |
---|---|
ValidarEntreHojas.xls | 31 KB |
Comentarios
Re: Validar datos con lista de datos que están en otra hoja
Hola pacomegia, necesito saber si me podrías ayudar, necesito saber si es posible imprimir una lista desplegable en la validación de datos del primero al último según sea al rango de una sola vez, ya que actualmente lo hago uno por uno, o sea que busco en la lista y voy cambiando de nombre y le doy imprimir, asi hasta llegar al final, pero a veces manejo listados de hasta 150 personas, y ya te imaginaras lo cansado que se me hace hacerlo de esa forma. Espero haberme dado a entender. Saludos.
macro que recorra el rango de origen
Bueno, se me ocurre hacer una macro que recorra las celdas del rango de origen de la validación
El rango de la validación se almacena en la propiedad Formula1 de la validación:
por ejemplo, podría ser algo parecido a esto:
Sub ValidaciónListaTodos()
' reemplaza el valor de la celda activa por cada uno de los valores de la lista de validación
' e imprime la hoja
' la celda activa debe ser la que contiene la regla de validación
Dim RangoValidación As Range
Dim Celda As Range
Set RangoValidación = Range(Replace(ActiveCell.Validation.Formula1, "=", ""))
' reemplazo el signo = de la fórmula que hace referencia a las celdas
For Each Celda In RangoValidación.Cells
' aquí lo que se quiera hacer con cada valor, por ejemplo:
ActiveCell.Value = Celda.Value ' asignamos el valor a la celda activa
ActiveSheet.PrintOut ' imprimimos la hoja
Next
Set RangoValidación = Nothing
End Sub
------
Ya sé Excel, pero necesito más.
Re: Validar datos con lista de datos que están en otra hoja
Y esto también lo debo hacer por medio de Visual Basic?? tu me puedes guiar, ya que en esto soy algo novaton??? Gracias y Saludos.
Re: Validar datos con lista de datos que están en otra hoja
Pues sí, esto hay que hacerlo mediante VBA.
Accede al editor de visual Basic mediante la combinación de teclas [ Alt ] [F11]
Ahí tienes el entorno de trabajo para programar.
¿sabes algo de esto?¿has programado antes?¿has grabado alguna macro antes?¿todo esto en totalmente nuevo para ti?
------
Ya sé Excel, pero necesito más.
Re: Validar datos con lista de datos que están en otra hoja
Re: Validar datos con lista de datos que están en otra hoja
Re: Validar datos con lista de datos que están en otra hoja
Re: Validar datos con lista de datos que están en otra hoja
Gracias por el comentario de validacion de hojas, en verdad me ha sido util porque así puede tomar los datos de otra hoja sin ser vistos o borrados.
error de datos
Al buscar con la funcion BUSCAR me muestra como resultado de la comparacion otros valores de la lista desplegable menos el relacionado con el vector de comparacion...donde esta la falla??
astergio
Duda
En caso de que tenga mas de 5 hojas como defino que sea de una hoja en especifico