@08302025

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

エクセルの関数について

①「1」シートのM列の中から「TRUE」になっている行を対象に処理を実行する。
TRUEになっていなければ(FALSE)、そのままM列の値をY列に記載する。
②TRUEになっている行のJ列の値を確認。J列の値を「2」シートのA列で検索。
③一致するものがなければ「1」シートのY列の値をFALSEに変更する
④一致した場合「2」シートの対応した行のB列の値を「1」シートのW列に記載する。
⑤一致した文言が「3333」「4444」だった場合は「1」シートのY列の値をFALSEに変更する
⑥それ以外の場合はTRUEにする

上記のエクセルの関数を教えていただきたいです。
「1シート」のY列に関数を置く想定です。

0 likes

2Answer

こういうことですか?

image.png

image.png

シート「1」のセル「W2」の内容

=IF(NOT(M2),"",IFERROR(VLOOKUP(J2,'2'!A:B,2,FALSE),""))

シート「1」のセル「Y2」の内容

=AND(M2,NOT(ISERROR(VLOOKUP(J2,'2'!A:B,2,FALSE))),'1'!W2<>"3333",'1'!W2<>"4444")
0Like

Comments

  1. @08302025

    Questioner

    ご教授いただきありがとうございます。
    ChatGPTやネット見ても修正がうまくいかずでして、再度ご教授いただけますと幸いです。

    Y列とW列の値について、以下のロジックを追加したいと考えています。
    分かりず楽恐縮ですが、ご教授いただけますと幸いです。
     
     
    ■Y列
    =AND(M2,NOT(ISERROR(VLOOKUP(J2,'2'!A:B,2,FALSE))),'1'!W2<>"3333",'1'!W2<>"4444")
     
    ①M2がTRUE(値が入っている、または非ゼロ)
    ②J2の値が「2」シートA列に存在する(VLOOKUPでエラーにならない)
    ③「1」シートW2セルの値が「3333」ではない
    ④「1」シートW2セルの値が「4444」ではない
     
    すべて満たされていればTRUE、1つでも満たされていなければFALSEを返す。
    となっているかと思いますが③④の部分は以下の処理に修正したいです。
     
    ③「1」シートW2セルの値が「3333」でなければFALSE。
    「1」シートW2セルの値が「3333」の場合、I2の値が「5555」または「6666」であったらTRUE。そうでなければFALSE
     
    ④「1」シートW2セルの値が「4444」でなければFALSE。
    「1」シートW2セルの値が「4444」の場合、I2の値が「7777」であり、かつN2の値に「8888」「9999」「xxxx」のどれかが含まれていたらTRUE、含まれていなければFALSE
     
    ■X列
    =IF(NOT(M2),"",IFERROR(VLOOKUP(J2,'2'!A:B,2,FALSE),""))
     
    VLOOKUPで一致した値が「3333」または「4444」であればI2の値を返す。

  2. ③「1」シートW2セルの値が「3333」でなければFALSE。
    ④「1」シートW2セルの値が「4444」でなければFALSE。
    これは両立しないので、Y列の値は、常にFALSEになると思いますが、それであっていますか?
    (W2の値が、「3333」かつ「4444」の場合にしか、TRUEにならない)

  3. @08302025

    Questioner

    失礼いたしました。
    以下ロジックにしたいです。

    ③「1」シートW2セルの値が「3333」の場合、I2の値が「5555」または「6666」であったらTRUE。そうでなければFALSE

    「1」シートW2セルの値が「4444」の場合、I2の値が「7777」であり、かつN2の値に「8888」「9999」「xxxx」のどれかが含まれていたらTRUE、含まれていなければFALSE

  4. 各列がどのような値の時に、どのような結果を期待しているのかを、私が回答につけたExcelの画面コピーの形式で提示いただくことはできますでしょうか。

① 1シートのM列をチェック
├─ M列 = FALSE → Y列にそのままM列の値を記載 → 終了
└─ M列 = TRUE → 次のステップへ

② TRUEの行のJ列を2シートのA列で検索
├─ 一致なし → 1シートのY列を FALSE に変更 → 終了
└─ 一致あり → 2シートのB列の値を1シートW列に記載 → 次のステップへ

③ W列の値による分岐
├─ W列 = 3333
│ ├─ I列 = 5555 または 6666 → TRUE
│ └─ それ以外 → FALSE
└─ W列 = 4444
├─ I列 = 7777 かつ N列に 8888 または 9999 または xxxx が含まれる → TRUE
└─ それ以外 → FALSE

上記のようなフローチャートで実施したいロジックを書き出しました。こちらでいかがでしょうか。。

0Like

Your answer might help someone💌