• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel 文字列一部含む場合の戻り値)

Excel文字列一部含む場合の戻り値

このQ&Aのポイント
  • Excelで、sheet2のB1に'sheet2'!A1が'sheet1'!A1を含む場合はsheet1!A2、'sheet1'!B1を含む場合はsheet1!B2を返す関数を作りたい。
  • sheet2のB1に'sheet2'!A1が'sheet1'!A1を含むかどうかを比較し、結果に応じてsheet1のセルを返す関数を作りたい。
  • Excelで、sheet2のB1に含まれるIPアドレスの第2オクテットを比較し、それに応じてsheet1のセルを返す関数を作りたい。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

=IF(A1="","",REPLACE(REPLACE(A1,FIND(".",A1,FIND(".",A1)+1),99,""),1,FIND(".",A1),"")+0) といった具合で第2セグメントを得ます。 >若番号・そうでない はナンのことかちょっと分かりませんので,適宜工夫して下さい。

miniminidog_001
質問者

お礼

回答いただいた内容を使用して問題を解決できました。 ありがとうございました。

miniminidog_001
質問者

補足

早速の回答ありがとうございます。 >若番号・そうでない については説明不足でした。 第2オクテッドは常に2つの連続した数字しか入りません。 例えば、172.20.*.*と172.21.*.*     10.16.*.*と10.17.*.*といったように番号が付与されています。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

既出回答のような方法でアタマ使わずとにかくチカラワザで計算すると =IF(COUNTA(A1:A2)<2,"",0+(INT(REPLACE(SUBSTITUTE(A1,".","",3),1,FIND(".",A1),""))>INT(REPLACE(SUBSTITUTE(A2,".","",3),1,FIND(".",A2),"")))) と =IF(COUNTA(A1:A2)<2,"",0+(INT(REPLACE(SUBSTITUTE(A1,".","",3),1,FIND(".",A1),""))<INT(REPLACE(SUBSTITUTE(A2,".","",3),1,FIND(".",A2),"")))) のようになりますが, 第1octは172や10など変わるにしても,今比較したいA1とA2ではとりあえず共通である 第2octは20と21など,今比較したいA1とA2では連続した2つの数字である 第3・第4octは,色々変わる という事だとすると,簡易には B1: =IF(A1>A2,1,0) B2: =IF(A1>A2,0,1) のように,子細気にせずにそのまま大小で判定してしまっても良いかも知れません。

miniminidog_001
質問者

お礼

回答ありがとうございます。 簡易の考え方を応用して解決できました。 ありがとうございました。

関連するQ&A