Contar el número de mayúsculas en una celda

Resuelto
Hola,

Me gustaría saber si hay alguna fórmula o truco para contar el número de letras mayúsculas en una celda.

Gracias de antemano.

5 respuestas

  1. Hola,

    si el número de mayúsculas se limita a solo algunas letras, puedes usar esta fórmula

    =SUMAPROD((EXTRAE(A1;FILA(INDIRECTO(1&"<:"&LARGO(A1)));1)={"A"."B"."C"."D"."E"."I"."O"."U"."Y"})*1)

    por otro lado, si todas las letras del alfabeto están involucradas, deberás completar la fórmula.
    Voy a ver si es posible hacerlo más simple

    --
    A+
    Mike-31

    Soy responsable de lo que digo, no de lo que tú entiendes...
    1. Re,

      Aquí tienes como complemento sin definir la letra mayúscula
      =SUMAPROD((CÓDIGO((EXTRAE(A1;FILA(INDIRECTO(1&":"&NB.CAR(A1)));1)))*1>=65)*(CÓDIGO((EXTRAE(A1;FILA(INDIRECTO(1&":"&NB.CAR(A1)));1)))*1<=90)*(CÓDIGO((EXTRAE(A1;FILA(INDIRECTO(1&":"&NB.CAR(A1)));1)))*1<>""))


      quizás exista algo más corto

      A+
      Mike-31

      Soy responsable de lo que digo, no de lo que tú entiendes...
      1. Colaborador
        Hola,

        no tengo la solución, pero puedo darte una pista para la detección

        el código binario de las mayúsculas comienza por 4 o 5
        y para las minúsculas, comienza por 6 o 7

        y visto en peso binario, (1-2-4-8) hay el bit 4+1 o 4 solo en mayúscula y nada más
        y el bit 4+2 o 4+2+1 en minúscula

        El "A" = 45 y el "a" = 65 por ejemplo. (en hexadecimal)

        bueno, eso puede servir, pero no tengo nada más.
        1. Hola Mike-31 y gracias por tu respuesta,

          funciona perfectamente porque no tengo muchas letras mayúsculas posibles.
          1. SUMA(NBCAR(SI.ERROR(REGEX.EXTRAER(A2;"[A-Z]";1;0);)))

            con A2 la celda de la que deseamos contar el número de mayúsculas

            Por analogía: 

            SUMA(NBCAR(SI.ERROR(REGEX.EXTRAER(A2;"[a-z]";1;0);)))

            para el número de minúsculas