miércoles, 19 de agosto de 2009

Ejemplo de Validación en Excel.

Desarrollaremos distintas opciones dentro de las validaciones en celdas de Excel. ¿Cuál es la utilidad de esta herramienta?, supongamos una hoja de trabajo que debe circular por distintos departamentos de la empresa y que cada usuario cumplimentará de acuerdo con su función; en estos casos de multiusuario se hace más necesario que nunca el poder discriminar la introducción de datos en nuestras hojas de cálculo.
Excel nos proporciona la Validación, en sus distintas variedades, para poder controlar qué tipo de datos se puede registrar en nuestras celdas.
Desde el menú datos > Validación activamos la ventana diálogo:


Al desplegar las opciones que nos permite observamos:
  • Numero entero: permite exclusivamente números enteros.

  • Decimal: números reales, i.e., enteros y decimales.

  • Lista: permite desplegar un listado de opciones. Sólo admite valores de esta lista.

  • Fecha: datos en formato fecha.

  • Hora: datos en formato hora.

  • Longitud: celdas con un número de caracteres alfanuméricos determinado.

  • Personalizada: nos habilita en base a una formula definida por nosotros el poder introducir un dato en la celda.

Combinando esta información con los operadores lógicos (entre, igual, mayor que, menor que, etc) determinados con los valores definidos por el usuario podemos configurar la validación.
Algunos ejemplos simples.
Ejemplo 1: permitir valores en una celda entre 10 y 100.


Ejemplo 2: permitir valores concretos (verdadero, falso, ns/nc)


Ejemplo 3: Condicionar la introducción de datos en una celda a valores de otra. Por ejemplo, sólo registrar valores en la Celda D2 si y sólo sí en la celda A1 el valor es 1.


Realmente lo explicado hasta ahora es lo que nos permite configurar la entrada de datos en nuestras celdas, sin embargo existen dos pestañas más (Mensaje entrante y Mensaje de error) que ayudan al usuario final de la hoja de cálculo. El mensaje entrante nos habilita para poder describir cuales son las condiciones de validación; pero sólo es descriptivo, no actua sobre las reglas de validación. Podremos dar un título y un detalle textual de estas reglas. Con el mensaje de error podremos determinar el tipo de error que deseamos ver cuando el valor introducido no cumpla con las reglas o condiciones de validación configuradas. Existen tres tipos de error:
-Límite: el más restrictivo. Sólo admite valores que cumplan la regla de validación para esa celda.
-Advertencia: nos pregunta si a pesar de no cumplir con las condiciones de la validación queremos continuar con el registro del dato.
-Información: el más flexible. Permite aceptar el valor erróneo después de informarnos del no cumplimiento.
en todos ellos incluiremos, si lo deseamos, un título y un mensaje que aparecerá en caso de incumplimiento de las reglas de validación en una ventana de error.

16 comentarios:

  1. Estimado como puedo hacer lo siguiente:
    1. Si la celda A1 introduzco el valor 1, entonces la celda B1 solo puede permitir los numeros 1, 2 o 3.
    2. Pero si en la celda A1 introduzco el valor 2, entonces la celda B1 solo puede permitir los valores 4, 5 y 6

    ** he intentado de muchas formas, con el validador de datos y con código de visual basic pero no me resulta aún, espero puedan ayudarme

    Saludos

    ResponderEliminar
  2. Estimado J. Santander,
    he dado una solución a tu consulta en la siguiente entrada:
    http://excelforo.blogspot.com/2009/10/ejemplo-de-doble-validacion.html
    se encuentra también en la etiqueta de Validación.
    Espero que te sirva.
    Un saludo

    ResponderEliminar
  3. hola,me podrian ayudar, tengo una duda como hago para validar en un rango que solo diga si o no

    ResponderEliminar
    Respuestas
    1. Hola, mira dentro de esta entrada el ejemplo 2(permitir valores concretos.
      Lo que tendrías que hacer es seleccionar el rango que desees, y luego aplicar una Validación de datos tipo Lista, con origen:
      si,no
      Slds

      Eliminar
  4. Como le agregas a una validación con lista, un autocomplete, es decir que puedas escribir 2 o 3 letras y te vaya sugiriendo los datos de la lista que vayan coincidiendo?

    ResponderEliminar
    Respuestas
    1. Hola Cr. Edgardo,
      esa es una opción que no es posible en la Validación de datos... y en general en Excel.
      Sólo al escribir debajo de una Lista de valores funciona como indicas...
      Lo siento, pero es algo en lo que Microsoft debería mejorar.
      Un saludo

      Eliminar
  5. como hago una validacion que solo acepte un codigo de 8 digitos; de los cuales algunos inician con 0

    ResponderEliminar
    Respuestas
    1. Hola, buenos días,
      en la validación de datos existe una opción para permitir una Longitud de texto a configurar por el usuario, asi que sólo tendrías que decirle igual a 8; con esto tendrías la mitad del trabajo hecho, para poder trabajar con los códigos que empiezan con cero, deberás dar formato a esas celdas tipo Texto.
      Esta sería la solución más sencilla siguiendo tus indicaciones.
      Un saludo

      Eliminar
  6. Hola quiero saber como usar la función para que no se repitan los nombres en una lista de alumnos como hago?

    ResponderEliminar
  7. Hola quiero saber como usar la función para que no se repitan los nombres en una lista de alumnos como hago?.Para poner en una columna diferente un mensaje si está repetido o no.

    ResponderEliminar
    Respuestas
    1. Hola,
      podrías poner al lado de cada celda la función =CONTAR.SI.
      Por ejemplo, tienes en la columna A los nombres de los alumnos, entonces en la columna B, en la primera de las celdas, supongamos B1, escribimos:
      =SI(CONTAR.SI(A:A;A1)>1;"Repetido";"No repetido")

      Creo te puede servir
      Slds

      Eliminar
    2. Hola gracias si me sirvió ,pero tengo otro problema,no de validacion sino de otra función.Es el siguiente:
      Dado el Nº de documento en A,en B agregarle un dígito al final según el sig. criterio:-Si el Nº de docum. termina en un Nº mayor que 5 restarle 4 a ese dígito y agregarlo como clave.
      -Si el Nº de docum. termina en un Nº menor o igual a 5 sumarle 4 a ese dígito y agregarlo como clave
      La solución sería esta:31589536-2
      y 31589532-6

      Eliminar
    3. Hola,
      No me queda claro cuál es el número de partida, pero supongamos en A1 el valor 31589536, entonces en B1 insertamos la función:
      =SI(VALOR(DERECHA(A1;1))>5;CONCATENAR(A1;"-";VALOR(DERECHA(A1;1))-4);CONCATENAR(A1;"-";VALOR(DERECHA(A1;1))+4))
      Creo que la fórmula responde a lo que pides.
      Slds

      Eliminar
    4. gracias por la respuesta

      Eliminar
  8. Hola quizás puedas ayudarme en resolver esto, gracias:
    Solo se deben ingresar fechas nacimiento, que sean del mes de agosto

    ResponderEliminar
    Respuestas
    1. Hola Milagros,
      deberás incorporar una Validación de datos tipo Personalizado con la fórmula:
      =MES(celda)=8
      siendo 'celda' la celda donde insertarías la fecha de nacimiento.
      Un cordial saludo

      Eliminar