Dans ma feuille de calcul Excel, j'ai la formule suivante (dans la colonne Q):
=IF(AND(I2=P2,I2<>""),"FUNC_FROM",(IF(AND(J2=P2,J2<>""),"PHYS_FROM",(IF(P2="","","NEW_FROM")))))
Ceci compare ce qui se trouve dans la colonne P à la colonne I & J. Mes résultats escomptés sont les suivants:
- Si P = I ET I n'est pas nul, Q doit afficher FUNC_FROM;
- Si P = J ET J n'est pas nul, Q doit afficher PHYS_FROM;
- Si P est nul, Q devrait être nul
- Sinon Q devrait montrer NEW_FROM
Mon problème est que seules les deux dernières balles semblentpour fonctionner, ma colonne Q est soit renseignée avec NEW_FROM si P n'est pas nul, soit laissée nulle si P est nul. Lorsque la valeur doit être PHYS_FROM ou FUNC_FROM, j'obtiens plutôt la valeur NEW_FROM.
Après avoir examiné la question, j'ai déterminé qu'Excel ne reconnaît tout simplement pas les cellules comme égales lorsqu'elles le sont. Par conséquent, je tire ces résultats de ma formule.
Des idées sur pourquoi cela se produit?
Remarque: Si je tape manuellement la valeur dans P, il reconnaîtra les cellules comme étant égales si elles le sont.
Réponses:
2 pour la réponse № 1N'oubliez pas qu'une cellule d'aspect vide n'est pas nécessairement une cellule vide et que les cellules xyzzy<space>
et xyzzy
mai Regardez pareil pour toi mais Excel le sait mieux.
Vérifier le contenu réel des cellules, vous devrez peut-être commencer à utiliser quelque chose comme trim()
supprimer les espaces de début et de fin avant la comparaison.
Par exemple, voici un exemple où le I2
la cellule a un espace à la fin et cela rend le premier test faux;
Editer le I2
cellule à retirer cet espace à la fin résout le problème: