lunes, 17 de octubre de 2011

Validación de datos personalizada.

Solucinaremos el problema de un lector con la Validación de datos de una celda formulada, o lo que es lo mismo con una Validación de datos personalizada:

...estoy trabajando en una hoja de cálculo y pretendo que en una casilla me sume un rango de celdas determinado, hasta aquí facil y sin problema; peró además he intentado introducir en esta casilla una regla de validación mediante la cual si se sobrepasa una cantidad fijada en la regla me salga un mensaje de error y no consigo que funcione, si introduzco directamente una cantidad superior a la permitida en la casilla si que sale el aviso, peró mediante la suma no, no se si es que no permite esta función o si debo hacerlo medianta algun otro sistema....


El problema es claro, en una celda tenemos introducida un fórmula de SUMA sobre otro rango de celdas, y pretendemos que la primera está validada, permitiendo sólo determinado rango de valores; sin embargo, Excel, con esta herramienta de Validación de datos sólo restringe la introducción directa de datos.
¿Cómo solucionar este inconveniente?, atacaremos por detrás a la celda a restringir.
Lo vemos con un sencillo ejemplo como siempre.
Tenemos un rango A1:C1 con diferentes valores, que sumaremos en D1. Será la celda D1 donde sumaremos el rango anterior, esto es, en D1:
=SUMA(A1:C1)
es precisamente la celda D1 la que queremos limitar entre un rango de valores, por ejemplo, que esté entre 5 y 8, es decir, pretendemos que la suma del rango A1:C1 quede siempre dentro del intervalo 5 y 8.

Validación de datos personalizada.


Seleccionamos el rango de celdas A1:C1, y desde la Ficha Datos > Herramientas de datos > Validación de datos

Validación de datos personalizada.


En la pestaña 'Configuración' permitimos Personalizada y en el editable de 'Fórmula' añadimos:
=Y($D$1>=5;$D$1<=8)
y listo.
Hemos conseguido restringir el valor de la celda D1, que provenía de la suma de tres celdas A1:C1, a un importe entre 5 y 8; aunque realmente las celdas validadas sean las del rango A1:C1.
Podemos comprobar como, efectivamente, si intentamos cambiar alguna de las celdas validadas para que la celda D1 incumpla la norma personalizada, nos devuelve el típico error de validación:

Validación de datos personalizada.

82 comentarios:

  1. Hola,
    Al introducir cualquier valor en el rango de validación me continua dando error, aunque este dentro del rango restringido.
    Un saludo.

    ResponderEliminar
  2. Hola,
    la validación restringe que la suma de los tres valores esté entre 5 y 8, no que cada una de las celdas esté entre estos valores...
    He confirmado que funciona como era de esperar, si la suma de los tres valores, en el rango de validación, no está entre 5 y 8, no admite el último valor introducido.
    Slds

    ResponderEliminar
  3. tengo la fecha (dia,mes,año)separadas cada una por columna y necesito colocarlas unidas en una sola columna 12/10/11 hay alguna formula para unirlas?.

    ResponderEliminar
  4. Hola Luis,
    podrías emplear la función
    =FECHA(año; mes; día)
    cada argumento el valor de una celda.
    También podrías emplear (es algo más 'cutre') la función =CONCATENAR(día;"/";mes;"/";año), hay alguna forma más, pero estas son la más sencillas.
    Slds

    ResponderEliminar
  5. si se da click en otra celda aun cuando no cumpla el valor antes de dar enter

    ResponderEliminar
    Respuestas
    1. ???
      Hola, que tal... no me queda claro si es una pregunta , una aclaración o una sugerencia...
      ???

      Slds

      Eliminar
  6. Hola, yo quisiera hacer algo parecido pero no se como
    espero me entienedan y puedan ayudar
    Quiero que en una celda se valide si se escribio el texto correcto, dependiendo de las opciones que yo especifique

    ej,
    quiero que en la celda A1 escriban solo "A" o "B" o "C"

    ResponderEliminar
    Respuestas
    1. Olvidenlo, jaja soy nuevo en las validaciones y no habia visto que esta la opcion lista
      igual gracias

      Eliminar
    2. Hola Cesar,
      efectivamente, la opción de permitir Lista es la adecuada para configurar la celda y restringir sólo a ciertos valores de un listado dado.
      Slds cordiales

      Eliminar
  7. Hola, cómo podría hacer una validación que solo permitiese escribir palabras terminadas en "s" y que además tuvieran una longitud mayor de 5 letras?
    gracias.

    ResponderEliminar
    Respuestas
    1. Hola,
      accede a la Validación de datos personalizada y añade la siguiente fórmula:
      =Y(DERECHA(C3;1)="s";LARGO(C3)>5)
      Saludos

      Eliminar
    2. Muchas gracias!

      Eliminar
  8. yo tengo una duda...

    dependiendo del numero de años trabajados le asigan un valor, que se incrementa una vez alcanzado los 5 y los 15 años.

    Si x <=5 entonces x*4

    SI x > 15, entonces serian 30+(x-15)

    Si esta entre 5 y 15, 20+(x-5)*2

    AL escribirlo todo en excel me sale esta formula, suponienod el valor x en la casilla A1

    =SI(A1<=5,A1*4;SI(A1>=15,30+((A1-15)*1);20+((A1-5)*2)))

    Que es lo que hago mal?? Me sale erro en la formula y me corre mucha prisa

    Gracias

    ResponderEliminar
    Respuestas
    1. Hola que tal?
      lo único que veo mal son las comas en lugar de los puntos y coma, si bien eso depende de tu configuración de sistema, o bien debe ser TODO como o bien todo punto y coma:
      =SI(A1<=5;A1*4;SI(A1>=15;30+((A1-15)*1);20+((A1-5)*2)))
      ó
      =SI(A1<=5,A1*4,SI(A1>=15,30+((A1-15)*1);20+((A1-5)*2)))

      Slds

      Eliminar
    2. Muchisimas gracias !!!

      Eliminar
    3. Yo veo paréntesis innecesarios dado que 30+(x-15)=x+15
      y que 20 + (x-5)*2= 2x+10
      por tanto:
      =SI(A1<=5;A1*4;SI(A1>=15;A1+15;2*A1+10))

      por otro lado, aunque no sé de que se trata, me resulta curiosa la reducción del valor entre A1=14
      que daría 38 a A1=15 que se queda en 30.

      Eliminar
    4. Corcovado,
      Gracias por tu comentario y aporte
      Slds

      Eliminar
  9. hola,saludos, tengo una duda en excel, necesito obtener los diez empleados con mayor antigüedad en una tabla de excel, la tabla contiene en columnas clave, nombre, apellidos, fecha de ingreso, sueldo, departamento y antigüedad, lo he intentado con tablas dinamicas y filtros pero no se como especificar que solo me devuelva los diez empleados más veteranos en la empresa, es una lista de 149 registros, gracias

    ResponderEliminar
    Respuestas
    1. Hola!!
      tienes varias opciones, la más sencilla sería aplicando un Filtro sobre el campo 'Fecha ingreso', en concreto un Filtro de Diez mejores, cunado abra la venta diálogo selecciona Inferiores y 10 elementos (lo que necesites), te mostrará las 10 fechas menores de ese campo... es decir, los diez elementos con más antigüedad.
      Ojo, por que devuelve las 10 fechas menores, si hubiera varias repetidas se podría dar la situación de que te mostrará más de diez registros... en ese caso habría que aplicar algún otro filtro sobre otro campo para 'desempatar'.
      Slds cordiales

      Eliminar
    2. hola Ismael, muchas gracias por tu tiempo en responderme, si me sirvió tu solución, aunque pensé que habría una formula o un criterio de filtro o tabla dinamica para que solo me mostrara los diez registros más antiguos, y si la hay, entonces no pude aplicar bien el filtro como me dijiste, lo que me sucedió fue que me ordeno de fecha menor a mayor y solo seleccioné los diez primeros datos y los demás que no me servían los borré.
      saludos desde México y de nuevo muchas gracias

      Eliminar
    3. Hola,
      lo que te comenté es un criterio de filtro que se puede aplicar sin necesidad de borrar...
      Pero igualmente se puede aplicar el mismmo criterio sobre una Tabla dinámica, con similar proceder..
      En ninguno de los casos es necesario ordenar ni mucho menos borrar los registros.
      Saludos

      Eliminar
  10. Hola Ismael, felicidades por tu valiosa aportación
    tengo el siguiente tema, dos hojas de Excel una con dos datos articulo, numero asignado por personal

    en otro solo tengo el numero de articulo,

    ordeno los dos archivos por numero de articulo,
    pero siempre son diferentes, en uno tengo mas artículos,
    he utilizado desref, concidir, para obtener el numero que se ingresa, el resultado no es el numero consecutivo sino el numero del primer articulo encontrado
    gracias por tu ayuda

    ResponderEliminar
    Respuestas
    1. Hola Muchas Gracias!
      no termino de comprender qué necesitas obtener.
      Entiendo que tienes en dos hojas diferentes unos listados de datos con un campo común que el el número de artículo... pero me pierdo en el fin de conseguir el número que se ingresa ¿te refieres al último número ingresado?.
      Si pudieras enviarme el fichero a
      excelforo@gmail.com
      junto a un ejemplo..
      Saludos cordiales

      Eliminar
  11. Hola,quiero validar los datos en un rango y debe ser de 4 digitosy terminar en 1 , 2 ó 3

    ResponderEliminar
    Respuestas
    1. Hola!
      aplica una validación personalizada con esta fórmula, suponiendo configuras la validación para la celda C2
      =Y(LARGO(C2)=4;O(VALOR(DERECHA(C2))=1;VALOR(DERECHA(C2))=2;VALOR(DERECHA(C2))=3))

      Saludos

      Eliminar
  12. Buenas, deseo proteger una hoja de excel y que solo me permita ingresar texto en un rango determinado, si pongo proteger hoja protege todo

    ResponderEliminar
    Respuestas
    1. Hola Amparo,
      para proteger una hoja pero permitir introducir datos en algunas celdas, primero debes Desbloquearlas y luego proteger la hoja.
      Echa un vistazo a
      http://excelforo.blogspot.com.es/2010/05/proteger-hoja-en-excel.html

      Espero te sirva.
      Slds cordiales

      Eliminar
  13. Hola, necesito saber como introducir en una celda solo letras, pero que la cantidad no exceda de 6 caracteres. Gracias por su ayuda de antemano

    ResponderEliminar
    Respuestas
    1. Hola,
      agrega una Validación de datos personalizada con la siguiente función, suponiendo la celda en cuestión es D3:
      =Y(ESTEXTO(D3);LARGO(D3)<=6)

      Saludos

      Eliminar
  14. Si quiero realizar una validacion pero que no sea numerica,, ejmp
    quiero que dependiendo del valor de una celda colocar una lista, explico:
    A | B
    0-1 -> lista (pañales,talcos,pañitos)
    2-10 -> lista(juguetes,balones)
    11-15 -> lista(mp4,entrada cine)

    Asi que la lista en la columna B debe cambiar dependiendo del valor en la columna A

    ResponderEliminar
    Respuestas
    1. Hola Edwin,
      lo primero sería tener nombradas las tres listas:
      lista1
      lista2
      lista3
      (los nombres que quieras).
      Luego seleccionar la columna B y añadir una validación de datos tipos lista con la fórmula:
      =SI($F$17<=1;lista1;SI($F$17<=10;lista2;lista3))

      Saludos

      Eliminar
  15. buenas tardes quisiera que el usuario solo una letra "X" nada mas como hacerlo en validacion de datos

    ResponderEliminar
    Respuestas
    1. Hola!
      hay varias formas.. una muy sencilla en Validación de datos > tipo Lista y en origen 'X'

      Listo
      Un saludo!

      Eliminar
  16. Hola, felicitaciones por tu aporte =)...quiero hacer una validacion, es un codigo de 7 caracteres, los 3 primeros debe ser "UNI", los 4 sgtes un numero entre 100 y 999....ademas de ser de 3 digitos rellenar con "0".

    Yo lo intente asi:
    =Y(LARGO(B4)=7,IZQUIERDA(B4,3)="UNI",DERECHA(B4,4)=ALEATORIO.ENTRE(100,9999))....pero no resulto. Agradeceria me ayudaras.

    ResponderEliminar
  17. era un numero aleatorio entre 100 y 9999 =P

    ResponderEliminar
    Respuestas
    1. Hola Vanessa,
      prueba con
      =Y(LARGO(B4)=7;IZQUIERDA(B4;3)="UNI";VALOR(DERECHA(B4;4))>=100;VALOR(DERECHA(B4;4))<=9999)

      lo que debes tener claro que es distinto generar una lista de elementos para usarlos en la validación, que utilizar una fórmula personalizada en Validación para admitir los valores que cumplan esa regla...
      esto último es lo que conseguirás...

      Para tener una lista desplegable en la validación tendrás que construirlo en un rango aparte...
      Un cordial saludo

      Eliminar
  18. Como creo una validación de datos, que cuando en la columna U, el valor sea distianto a 0, en la columna V se deba ingresar una palabra cualquiera. Pero cuando U sea igual a 0 no sea necesario ingresar la palabra en V.

    ResponderEliminar
    Respuestas
    1. Hola Ariel,
      la validación de datos en una celda restringe o permite la introducción de valores(texto, fecha, números), pero no puede controlar o forzar al usuario a que ingrese una palabra...
      Saludos

      Eliminar
  19. Hola Ismael ,, una duda ,, como haria la validacion de una celda , dependiente de otra que varia de acuerdo a la celda validada... en la celda B3 que es la que quiero validar , va a depender de la celda E3. que son las existencias actuales , ejemplo ,, en la celda B3 digito 3 salidas , y esta salidas van a depender de las existencias ,, (E3) que hay 5 ,, pero esta celda va a reducir sus existencias al moneto que digite 3 en B3 ,, se me presenta un problema ,,que al momento de darle arriba de 3 salidas me dice que no puedo o me presenta error ,, haber si me puedes ayudar (recuerda que la celda E3, reducira sus existencias al momento de dar ladias ... saludos y gracias por tu apoyo

    ResponderEliminar
  20. Hola:
    Se puede hacer validacion de datos con una funcion de usurario?

    ResponderEliminar
    Respuestas
    1. Hola Sebastian,
      sí, claro... una función definida por el usuario (UDF) e a estos efectos es una función normal, y por tanto se puede emplear.
      Saludos

      Eliminar
  21. Hola de nuevo:
    Cuando intento utilizar una UDF para validación de datos me da un error:
    'No se puede encontrar uno de los rangos especificados'.
    A que puede deber?

    un saludo

    ResponderEliminar
    Respuestas
    1. Hola Sabastían,
      habría que ver la función.. pero si la quieres emplear en una Validación de datos (entiendo para desplegar ciertos valores), tendrías que asegurarte que la UDF tiene la capacidad de reflejar un rango de valores... y claro está, devuelve un rango correcto.

      El error parece indicar que la UDF no está funcionando correctamente en este aspecto, y devuelve un dato/s que no es entendido como rango por Excel.

      Saludos

      Eliminar
  22. Hola de nuevo:

    No se trata de la función en si. Solo por el hecho de introducirla en la barra de formulas de validación me da este error.

    por ejemplo he utilizado lo mas básico:

    function validar()
    validar=true
    end function

    y me da error. Por eso pienso que me estoy saltando algún paso, pero no se cual.
    un saludo

    ResponderEliminar
    Respuestas
    1. Hola Sebastian,
      parece existen restricciones en cuanto al uso de UDF dentro de las validaciones de datos (curioso, por que no en otras funcionalidades, por ejemplo, formatos condicionales).

      la solución consiste en crear un Nombre definido donde incluir la UDF, para luego incorporar el Nombre definido en la validación de datos...
      Algo retorcido, pero no hay más solución...

      Saludos

      Eliminar
  23. Buenas tardes, tengo un problema para hacer una validación de datos, quisiera que me saliera un mensaje de advertencia si dos cantidades provenientes de sumar rangos son diferentes, las cantidades a comparar las obtengo mediante la formula =suma, cada suma toma las cantidades de diferentes rangos pero el resultado debe ser el mismo
    Espero puedas ayudarme

    ResponderEliminar
    Respuestas
    1. Hola Gabi,
      creo que lo más sencillo sería añadir en una celda un condicional comparando ambas celdas con la función suma.
      Por ejemplo, en A1 tenemos
      =SUMA(A2:A10)
      y en B1:
      =SUMA(B2:B10)
      en C1 podemos controlar el hecho
      =SI(A1=B1;"OK";"OJO!!, Diferentes")

      Espero te sirva
      Saludos!

      Eliminar
    2. Gracias Ismael, en mi documento ya tenia esa condicional, solo quería el mensaje para asegurarme que el resultado de las sumatorias siempre fuera el mismo.
      Si se te ocurre algo para lo que busco te lo agradecería muchísimo, si no es posible muchas gracias por tu ayuda
      Saludos!

      Eliminar
    3. Hola,
      creo que habría que tirar de programación.
      Generar un evento change en el código de la hoja para que al cambiar el valor de esas dos celdas, compruebe si son iguales o no.. y en el caso que ocurra lance un MsgBox

      Mira este link
      http://excelforo.blogspot.com.es/2016/03/vba-macro-de-un-filtro-avanzado.html

      Saludos

      Eliminar
  24. Hola, gracias por tu aporte.. la verdad mi conocimiento de macros es prácticamente nulo.. pero encontré una solución a mi problema y quiero compartirla contigo y el foro.
    Sigamos con el ejemplo que pusiste en el comentario anterior
    En A1 tenemos
    =SUMA(A2:A10)
    y en B1:
    =SUMA(B2:B10)
    En la barra de formulas de validación de datos personal escribes lo siguiente:
    =SI(A1=B1,VERDADERO,FALSO)

    Con eso yo resolví mi problema espero le sea útil a alguien más
    Saludos!

    ResponderEliminar
  25. HOLA ISMAEL, MUY INTERESANTE TU PAGINA Y MUY BUENA, ME TOPE CON LA PAGINA POR UNA DUDA QUE TENGO EN LA VALIDACIÓN DE DATOS, QUIERO VALIDAR ESTOS DATOS (0,1,DF,SC,P,RM,NIC,-) EN UNA CEDA, QUE SOLO PUEDA MANEJAR ESTA DATOS AL MOMENTO DE LLEVAR LA PLANILLA, NO PUEDO UTILIZAR LISTA DESPLEGABLE, DEBIDO QUE DEBE LLENAR MUCHA CEDA A LA VES, Y LA LISTA QUITARÍA TIEMPO, HE INTENTADO CON VARIAS FORMULA Y NADA, OBVIAMENTE SU PRINCIPIANTE, TE AGRADECÍA CUALQUIER AYUDAR POSIBLE..... Dili

    ResponderEliminar
    Respuestas
    1. Hola,
      si no quieres/puedes aplicar una validación tipo lista tendrías que optar por una fórmula dentro de la validación de datos personalizada:
      =O(celda=0;celda=1;celda="DF";celda="SC";celda="P";celda="RM";celda="NIC";celda="-")
      'celda' representará la celda activa en el momento de crear la validación.
      Saludos

      Eliminar
    2. MUCHA GRACIAS ISMAEL, HA SERVIDO ES LO Q ANDO BUSCANDO, PERO SE ME ESTA PRESENTADO UNA PREGUNTA, DEBIDO QUE LO HE INTENTADO, COMO TENGO QUE APLICA A VARIAS CELDA DESDE LA L HASTA AY EN FORMA HORIZONTAL, Y DESDE 12 HASTA 56 EN FILA, ESTA FORMULA TENGO QUE IRME A PIEL COLOCAR LA FORMULA EN CADA CELDA UNA POR UNA, O HAY UNA DE MANERA DE APLICARLA PARA TODAS, HE INTENTADO PERO NO HE PODIDO, Y NUEVAMENTE MUCHA GRACIAS POR TU AYUDAD, SALUDO. DILI

      Eliminar
  26. hola Ismael, ya resolvi el problema tuvo un momento digamos de ignorancia, ya mas calmada me vino la respuesta que era copia y pegar en las demás celda, por eso digo fue un momento, por lo general lo que se de excel es ha sido de experiencia vida, y porque me gusta. tengo una curiosidad cuando protege un libro, las misma condiciones de bloqueo en otro libro del mismo archivo, lo que he venido observado es que se realiza un copiado del formato, y se abre un archivo nuevo y se pega quedado el formato en archivo desprotegido para realizar cambio sin la debida autorización, no hay manera para que no ocurra, que pueda proteger el archivo sin que realice la operación mencionada, muchas gracias por tu colaboración y tu ayudad, saludo.. Dili

    ResponderEliminar
    Respuestas
    1. ;-)
      también valdría haber seleccionado el rango y con éste marcado incluir la fórmula en la validación personalizada tomando como celda de la fórmula la celda activa.

      Respecto al Libro protegido (u hoja protegida.. no me queda claro).. no entiendo el planteamiento ???

      Saludos

      Eliminar
  27. :P Hola Ismael, buena datos ya se para la proxima realizarlo de esta forma, en referente al planteamiento tengo un archivo de excel X con un formato protegido, pero viene un operador y copia el formato del archivo protegido, y lo copia en un archivo nuevo y pega, en que pego esta desprotegido para manipularlo y adaptarlo a su manera.

    ResponderEliminar
    Respuestas
    1. :(
      siempre hay formas de saltar por encima de las protecciones de hoja o Libro...
      Saludos

      Eliminar
  28. Hola Ismael, gracias por la información, disculpa que te moleste nuevamente, estoy tratando de realizar una formular una celda, o me aparece error, #!Valor!, o no corre formula como se espero, la idea es que aparezca en la celda el texto APLAZADO, cuando la celda indique que es <=9 NOTA y tiene mayor de 7 inasistencia en caso contrario cuando sea >=10 NOTA APROBADO y tiene menor de 7 inasistencia, por un lado, por el otro lado si la celda indica 0 y mas de 20 inasistencia seria INASISTENTE, y cuando la celda indica 1 menos de 20 inasistencia seria S.INFORMACIÓN. si es un poco enredado, espero que me pueda ayudar, y si me supe explicar, es algo parecido a eso (O13<=9;"APLAZADO";"APROBADO");(SI(U13>=20;"INASISTENTE";"S. INFORMACIÓN", saludo dili

    ResponderEliminar
    Respuestas
    1. Hola,
      entiendo el texto debe aparecer en otra celda, distinta de la celda con Nota e Inasistencias.. si es así, tendrías que aplicar un condicional, con algo más de estructura que el ejemplo que planteas:
      =SI(Y(nota<=9;inasistencia>7);"Aplazado";SI(Y(nota>9;inasistencia<7);"Aprobado";SI(Y(nota=0;inasistencia>20);"S.Información")))

      Espero haberte entendido bien.. no está muy claro la explicación.
      Saludos

      Eliminar
  29. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  30. Hola ismael, mucha gracias por la información me ha servido, no había pasado por aquí, anda un poco full con el trabajo, mucha gracias por tu colaboracion

    ResponderEliminar
  31. uff muy útil y muy bien explicado, tengo una consulta si quisiera un macro que se ejecute cuando una celda cambie de valor, perooo la celda cambia de valor por formula, es algo que se puede hacer?

    ResponderEliminar
  32. Hola Ismael. Necesito hacer una validación de datos personalizada en una columna llamada código que me servirá para una nota de venta. Dicho código debe iniciar forzosamente con las letras "HZ" (Ejemplo HZ-001, HZ123, HZ 01), he intentado con la fórmula =Y(izquierda(a4,2)="HZ") pero no me sale. Me puedes ayudar.

    ResponderEliminar
    Respuestas
    1. Hola Francisco,
      no hace falta la función Y... podría ser:
      =IZQUIERDA(A4;2)="HZ"

      asegúrate que la celda activa corresponde con la celda de la fórmula!!!
      probablemente el fallo esté ahí
      Un saludo

      Eliminar
  33. me puede brindar formulas para llevara a cabo la validación de datos personalizada

    ResponderEliminar
    Respuestas
    1. Hola Ronaldo,
      cómo estás?, un placer saludarte igualmente,
      Será un placer ayudarte.. pero ¿cuál es el fin de esa fórmula?, ¿qué necesitas hacer?

      Un cordial saludo

      Eliminar
  34. Ismael, de antemano se agradece que gente como tu destine su tiempo en compartir sus conocimientos con quienes nos vamos iniciando. Te comento que hice un sistema de inventarios en excel, pero lo que no he podigo lograr es que al querer dar salida a un artículo sin existencia o con existencia menor a la que tiene, el sistema no me lo permita, pense que talvez a traves de la validación de datos personalizada, pero la vdd es que me revulevo un poco a la hora de querer generar la formula

    ResponderEliminar
    Respuestas
    1. Hola Jorge,
      gracias por tus palabras.
      La validación, en todo caso, se tendría que hacer en esas celdas en las que se recogen las entradas y salidas... por lo que todo depende de cómo esté montado el sistema.
      Por ejemplo, un modelo muy muy simple:
      Celda A2 codigo producto, celda B2 cantidad stock (con la fórmula:=C2-D2+E2
      siendo
      C2 las entradas (manualmente)
      D2 las salidas (manualmente)
      E2 el saldo inicial (manualmente).
      En ese caso seleccionamos C2:D2 y añadimos una validación personalizada con la fórmula:
      =$B$2>=0

      asi nos aseguramos que cualquier cantidad introducida en C2:D2 (entradas o salidas) no permita un stock negativo.

      Espero te oriente
      Saludos

      Eliminar
  35. BUENAS TARDES QUISEIRA SABER SI SE PUEDE TENER UN FORMATO PERSONALIZADO EN DONDE ME DE EL FORMATO DE RFC, ES DECIR QUE LAS 4 PRIMEROS CARACTERES SEAN LETRAS,LOS 6 SIGUIENTESNUMEROS, Y LOS 3 ULTIMOS SEAN CUALQUIER VALOR.

    ResponderEliminar
    Respuestas
    1. Hola Gabriel,
      no parece posible a priori, ya que los formatos personalizados afectan a valores numéricos..

      Saludos

      Eliminar
  36. Buenos días. Por favor, tengo preparada la lista desplegable para 5 elementos seleccionables. Pero me gustaría obtener la suma de todos los elementos de la lista deplegable. Hay alguna forma de hacerlo? Muchas gracias por anticipado.

    Dennisse

    ResponderEliminar
    Respuestas
    1. Hola Denisse,
      entiendo quieres obtener la suma acumulada según el elemento desplegado...
      si es así, podrás emplear la función =SUMAR.SI(Rango_evaluación;celda_desplegable;rango_suma)

      Espero haberte comprendido
      Saludos

      Eliminar
  37. Gracias Ismael,
    Estoy usando la función SUMIFS (suma si conjunto) y una de las variables está ligada a una celda con una lista desplegable de 10 elementos. Por lo tanto, las celdas pueden ofrecer hasta 10 resultados diferentes. A la lista despegable, quisiera añadir una opción o condición ( por ejemplo: "ALL") que me permita ver tambíén la suma general de todos los elementos de la lista despegable; es decir, el total sin la segmentación que estoy usando gracias a la lista despegable.
    espero haberme explicado mejor.

    Muchas gracias de nuevo.


    ResponderEliminar
    Respuestas
    1. Hola,
      tendrías que incluir un condicional que gestione esa posibilidad:
      =SI(celda_validada="ALL";SUMIFS(rng_suma;rng:crit1;crit1);SUMIFS(rng_suma;rng:crit1;crit1;rng_crit2;crit2))
      como ves cuando la celda es ALL el SUMIFS no aplica criterio sobre el rango de evaluación 2...

      Espero haberme explicado
      Slds

      Eliminar
  38. Validar el rango a5:a20 para que no reciba codigos duplicados
    Los codigos deben empezar con C y en total tener 5 caracteres (incluyendo la C)
    pongo la formula que me dijo el rofesor pero me sale un error al poner eso
    =Y(CONTAR.SI($A$5:$A$20,A5)=1,LARGO(A5)=5,IZQUIERDA(A5)="C")

    ResponderEliminar
    Respuestas
    1. Hola Elsa,
      que tal estás?, un placer saludarte igualmente...
      He probado la fórmula que planteas y funciona correctamente... quizá el error que te salta sea por el separador de argumentos que estás empleando: coma en lugar de punto ',' y coma ';'
      Prueba:
      =Y(CONTAR.SI($A$5:$A$20;A5)=1;LARGO(A5)=5;IZQUIERDA(A5)="C")

      Un cordial saludo

      Eliminar
  39. VALIDACION DE DATOS:
    Validar el rango B5:B16 para que reciba numeros de DNI
    PERMITIR: Personalizada
    formula: =Y(LARGO(B5)=8,VALOR(B5)>0)
    me sale error

    ResponderEliminar
    Respuestas
    1. misma situación que el anterior:
      =Y(LARGO(B5)=8;VALOR(B5)>0)

      Eliminar