*Excelの文字列関数とIF

**文字列関数
-Microsoft Office[[文字列関数 (リファレンス)>https://support.office.com/ja-jp/article/%E6%96%87%E5%AD%97%E5%88%97%E9%96%A2%E6%95%B0-%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9-cccd86ad-547d-4ea9-a065-7bb697c2a56e]]

-例:BCCWJのジャンル(NDC)の整理
--先頭の文字を取り出す(NDCの一次区分(=類))
---=LEFT(<ジャンルのセル>,1)
--スラッシュで区切られた最初の部分(ジャンルの大分類)
---=LEFT(<ジャンルのセル>,SEARCH("/",<ジャンルのセル>)-1)

-集計用に用意した列で文字列処理関数を利用する
--LEFT
--RIGHT
--MID
--LEN
--SEARCH
--SUBSTITUTE

**IFによる条件分け

-条件わけ:IF
-エラー対応:IFERROR

-応用例:BCCWJの品詞の大分類を取り出す
--=IFERROR(LEFT(<品詞>,SEARCH("-",<品詞>)-1),<品詞>)
---品詞に「-」がない場合にエラーになるのを避ける


**Excelの文字列関数で前後文脈を整える

--後文脈の「#」より後を消す(「#」がない場合はそのまま)
 =IF(ISERROR(SEARCH("#",<後文脈>)),<後文脈>,LEFT(<後文脈>,SEARCH("#",<後文脈>)))
--前文脈の「#」以前を消す(「#」がない場合はそのまま)((「#」が複数ある場合の処理があるので難しい。「~」は前文脈に決して出現しない文字を指定))
 =RIGHT(<前文脈>,LEN(<前文脈>)-(FIND("~",SUBSTITUTE("#"&<前文脈>,"#","~",LEN("#"&<前文脈>)-LEN(SUBSTITUTE("#"&<前文脈>,"#",""))),1)-1))

※当該列をエディタにコピーして正規表現で置換した方が早い

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS