2016-06-15 5 views
0

私は最近、<>演算子を使用した数式に関する興味深い問題を経験しました。私は、次のセルを持っていると仮定しますA2Excelより小さいより大きい関数が期待どおりに機能しない

私はB2で式=TODAY()

を持っている私は、英文字列を持っている、QWRSTY-11を言います。最後の二つの数字はC2でカレンダーの週

を表す今日は2016年6月15日で、週数は24である、式は"0"を返す必要がありますので、私は、次の式 =IF(ISOWEEKNUM(A2)<RIGHT(B2,2),"X","0")

を持っています。代わりに、"X"を返します。

私の式を二重にチェックするには、D2に私は次のように入力: =ISOWEEKNUM(A2)-RIGHT(B2,2) この式が正しい"13"を返します!

私はここで何が起こっているのか分かりません。評価式を使用しましたが、手がかりはありませんでした。 Googleも役に立ちませんでした。 ご意見をお待ちしております。

EDIT

私の悪い、私は完全にジョーダンが提案されたソリューションをテストしていません。 N機能を追加しても機能しません。たとえば、B2の文字列がQWRSTY-88のように変更された場合、C2の式は「0」を返します。私は何が起こっているのかを理解するために評価式を使用しました。 「88」はテキストとして扱われ、N(「88」)は「0」を返します。 ご意見ありがとうございます。

+0

セルC2の数式のうち、現在のところTRUEまたはFALSE条件が指定されていないか、IF関数の右括弧が含まれていないものがあります。 – Jordan

+0

ジョーダンありがとう、私の投稿の編集に何か間違っていた。今それは正しい –

答えて

0

私は答えを見つけた:Right関数で抽出されたテキストを変換する関数の値を使用します。

0

テキスト値と数値を比較している可能性があります。 Nを使用してRight機能で抽出されたテキストを変換してみてください。

=IF(ISOWEEKNUM(A2)<N(RIGHT(B2,2)),"X","0") 
+1

それは動作します!私は、N関数が減算の際に必要ではないことにまだ驚いています。とにかく、ありがとう。すてきな一日を –

関連する問題