Función PAR y IMPAR en un rango (NB.SI.ENS)

Resuelto
pasbra Mensajes publicados 9 Estado Miembro -  
Vaucluse Mensajes publicados 27336 Fecha de registro   Estado Colaborador Última intervención   -
Hola,

Utilizo la función NB.SI.ENS con 2 criterios. Quiero establecer un criterio de un rango si el valor es Par o Impar. Conozco las funciones ES.PAR y ES.IMPAR, pero parece aplicarse a un solo valor, no a un rango.

Mi primer criterio es un valor de texto y mi segundo criterio es un valor par.

Mi fórmula:

=NB.SI.ENS(F30:F37;"1*";E30:E37;"ES.PAR(E30:E37)")

la parte en negrita no funciona...

puedo poner un criterio matemático tipo >23, funciona pero no responde a mi criterio.

Gracias por sus consejos

Configuración: Windows / Chrome 62.0.3202.94

--
Pascal

4 respuestas

  1. Vaucluse Mensajes publicados 27336 Fecha de registro   Estado Colaborador Última intervención   6 453
     
    Hola

    no hay demasiadas explicaciones en vuestro archivo, pero si buscas contar las clases que empiezan por 1 en E con un número par en F debería funcionar:

    =SOMMEPROD((GAUCHE(F2:F1000;1)="1")*(MOD(E2:E1000;2)=0))

    atención, coloca bien el 1 del primer ítem entre comillas para tratarlo como texto.

    limita bien el número de filas a la altura útil para evitar pesadeces de esta fórmula

    crdlmnt

    La calidad de la respuesta depende sobre todo de la claridad de la pregunta, ¡gracias!
    1
    1. pasbra
       
      Hola,

      Gracias, funciona. El uso de MOD es una excelente idea para detectar si un número es par...
      0
    2. Vaucluse Mensajes publicados 27336 Fecha de registro   Estado Colaborador Última intervención   6 453
       
      De rien
      Pasa el tema a resuelto
      Buen viaje
      crdlmnt
      0
  2. Vaucluse Mensajes publicados 27336 Fecha de registro   Estado Colaborador Última intervención   6 453
     
    Hola
    según tu texto, se trata de contar valores pares si el texto en la columna F empieza por 1

    intenta con:

    =SOMMEPROD((IZQUIERDA(F30:F37;1)*1=1)*(MOD(E30:E37;2)=0))

    el *1 en el primer ítem solo debe colocarse si los valores de F son numéricos

    y puedes añadir, por ejemplo:

    =SOMMEPROD((IZQUIERDA(F30:F37;1)*1=1)*(Y30:Y37>23)*(MOD(E30:E37;2)=0))

    y otros más

    crdlmnt

    --
    La calidad de la respuesta depende principalmente de la claridad de la pregunta, ¡gracias!
    0
    1. pasbra Mensajes publicados 9 Estado Miembro
       
      Gracias por la respuesta.

      Aplicando directamente la fórmula según lo que mencioné, funciona. Pero, no puedo usarla en mi caso. La columna F representa las clases y la columna E un # secuencial que me sirve para distinguir si la clase es de la mañana o de la tarde.

      Mi objetivo es contar el número de clases X en la mañana; el número de clases Y en la tarde... Así sucesivamente, para totalizar las horas ya que las clases no tienen la misma duración en AM o PM.

      Pensándolo bien, creo que voy a añadir una columna AM o PM según si el número es par o impar. Después será fácil continuar... ¡Bien, creo!

      Gracias de nuevo
      0
  3. DjiDji59430 Mensajes publicados 4280 Fecha de registro   Estado Miembro Última intervención   718
     
    Hola a ambos

    intenta:

    [=NB(SI((F30:F37="1*")*(EST.PAIR(E30:E37);E30:E37))]

    en matricial

    Cdlmnt
    0
    1. pasbra Mensajes publicados 9 Estado Miembro
       
      Hola, He probado, pero me aparece un mensaje de error. No entiendo exactamente qué es lo que intentas hacer, es más difícil encontrar el error en ese momento... ¿Es bien la función NB que quieres usar o NB.SI? He probado varias cosas, pero no logro nada. En formato matricial, ¿qué significaba y las " ] " tienen importancia? Gracias
      0
      1. DjiDji59430 Mensajes publicados 4280 Fecha de registro   Estado Miembro Última intervención   718 > pasbra Mensajes publicados 9 Estado Miembro
         
        escribes tu fórmula

        =NB(SI((F30:F37="1*")*(EST.PAIR(E30:E37);E30:E37)) y la validas con shift + control + enter al mismo tiempo con tres dedos.
        Aparecen a ambos lados de tu fórmula unas llaves que muestran que la fórmula está validad
        Resultado obtenido :
        {=NB(SI((F30:F37="1*")&&(EST.PAIR(E30:E37);E30:E37))}
        0
      2. pasbra Mensajes publicados 9 Estado Miembro > DjiDji59430 Mensajes publicados 4280 Fecha de registro   Estado Miembro Última intervención  
         
        No funciona... Hay un error en la fórmula...

        ¿No parece posible adjuntar un archivo aquí?
        0
      3. DjiDji59430 Mensajes publicados 4280 Fecha de registro   Estado Miembro Última intervención   718 > pasbra Mensajes publicados 9 Estado Miembro
         
        Hola, Adjunta un archivo de prueba (con TODAS las explicaciones y resultados deseados) o, mejor, si es posible, el archivo en cuestión; es más cómodo para los participantes. 1) Ve a https://www.cjoint.com/ 2) Haz clic en [Examinar] para seleccionar tu archivo 3) Desciende hasta la parte inferior de la página y haz clic en [Crear el enlace Cjoint] 4) Después de unos segundos aparecerá el enlace en azul subrayado; selecciónalo y pulsa "Copiar" 5) Regresa a la conversación y, en tu mensaje de respuesta, escribe: "Pegar". Atentamente. {=NB(SI((GAUCHE(F30:F37;1)=1)*(EST.PAIR(E30:E37);E30:E37))}
        0
  4. pasbra
     
    Gracias, no conocía el sitio!

    http://www.cjoint.com/c/GKrbbmwiDWB
    0