¿Dónde está el error de sintaxis en mi fórmula?

¿Dónde está el error de sintaxis en mi fórmula?

Estoy intentando utilizar esta fórmula, pero Excel sigue diciéndome que hay un error.

=SI(NB.SI(A2;"*D*");"Data";"SI(NB.SI(A2;"*V*");"Voice";"Autres")")

(En Inglés:

=IF(COUNTIF(A2;"*D*");"Data";"IF(COUNTIF(A2;"*V*");"Voice";"Autres")")

)

No entiendo dónde está.

SI significa SI, estoy usando una versión francesa en Excel 2010 en Win7.

Como mi inglés no es perfecto, algunas cosas que diré pueden sonar raras.

Aquí hay una demostración de lo que estoy haciendo:

Captura de pantalla

  • SI DXTipo de datos
  • SI VXEscribe voz
  • En todo caso, escriba Autres.

Xes un número. No existen otros tipos, sólo “Datos”, “Voz” y “Autres”.

Puede que sea mi propia fórmula la que sea incorrecta; si tiene otra forma de escribir esto, no dude en hacerlo.

Respuesta1

No tengo la versión francesa, así que no puedo descartar que SI y NB.SI sean buenos o malos. Suponiendo que sean buenos, aquí está la fórmula desglosada:

=SI
(
  NB.SI
  (
    A2;
    "D"              
  );                 *
  "Data";
  "SI                <
  (
    NB.SI
    (
      A2;
      "V"            
    );               *
    "Voice";
    "Autres"
  )"                 <
)

Esto me dice que hay dos " que son incorrectos. Estos se resaltan arriba usando <. Además, la fórmula NB.SI está incompleta. NB.SI devolverá la cantidad de coincidencias, pero IF solo verifica si es verdadero o falso, por lo que Necesitamos cambiar la cantidad de coincidencias en verdadero o falso evaluando si son más de 0. Estas se resaltan arriba usando un archivo *.

La fórmula correcta sería

=SI
(
  NB.SI
  (
    A2;
    "D"
  )>0;
  "Data";
  SI
  (
    NB.SI
    (
      A2;
      "V"
    )>0;
    "Voice";
    "Autres"
  )
)

o:

=SI(NB.SI(A2;"D")>0;"Data";SI(NB.SI(A2;"V")>0;"Voice";"Autres"))

Respuesta2

=SI(CONTAR.SI(A2,"D*"),"Datos",SI(CONTAR.SI(A2,"V*"),"Voz","Autres"))

En francés lo siguiente después de su actualización:

=SI(NB.SI(A2;"D*");"Data",SI(NB.SI(A2;"V*");"Voice";"Autres"))

Tal vez deberías usar SI en lugar de NB.SI si tus datos en A2 son solo D o V, ya que no es necesario contar, la fórmula se convierte en

=SI(A2="D";"Data",SI(A2="V";"Voice";"Autres"))

O después de tu actualización:

=SI(GAUCHE(A2,1)="D";"Data",SI(GAUCHE(A2,1)="V";"Voice";"Autres"))

Respuesta3

Yorik me ayudó a encontrar la respuesta.

Usé la fórmula:

=SI(GAUCHE(A2)="D";"Data";SI(GAUCHE(A2)="V";"Voice";"Autres"))

(Inglés:

=IF(LEFT(A2)="D";"Data";IF(LEFT(A2)="V";"Voice";"Autres"))

Y funcionó perfectamente. ¡Esto también me dio una lección sobre cómo usar corchetes y comillas correctamente! Gracias SuperUsuarios :)

información relacionada