人生のプチ美学を教えてください!!

office365を使用しています。
以下の数式についてですが,もっと短くできないでしょうか。
以下は条件にヒットした文字列をつなげるための数式です。
最初の「&」以降の部分ですが,「LEFT(VLOOKUP($C14,台帳!E:BR,42,0),(LEN(VLOOKUP(C14,台帳!E:BR,42,0))*IF(VLOOKUP(C14,台帳!E:BR,43,0)="",0,1)))」が2回出てくるため,非効率な感じがします。

=+LEFT(VLOOKUP($C14,台帳!E:BR,35,0),(LEN(VLOOKUP(C14,台帳!E:BR,35,0))*IF(VLOOKUP(C14,台帳!E:BR,36,0)="",0,1)))&IF(LEFT(VLOOKUP($C14,台帳!E:BR,42,0),(LEN(VLOOKUP(C14,台帳!E:BR,42,0))*IF(VLOOKUP(C14,台帳!E:BR,43,0)="",0,1)))="","",","&LEFT(VLOOKUP($C14,台帳!E:BR,42,0),(LEN(VLOOKUP(C14,台帳!E:BR,42,0))*IF(VLOOKUP(C14,台帳!E:BR,43,0)="",0,1))))

良い方法があれば,ご教示いただけますようお願いいたします。

A 回答 (1件)

=+TEXTJOIN(",",TRUE,LEFT(VLOOKUP($C14,台帳!E:BR,35,0),(LEN(VLOOKUP(C14,台帳!E:BR,35,0))*IF(VLOOKUP(C14,台帳!E:BR,36,0)="",0,1))),LEFT(VLOOKUP($C14,台帳!E:BR,42,0),(LEN(VLOOKUP(C14,台帳!E:BR,42,0))*IF(VLOOKUP(C14,台帳!E:BR,43,0)="",0,1))))



ですかね。先頭の「+」がよくわかりませんが。

TEXTJOIN(",",TRUE,値1,値2) で、値1と値2をカンマ区切りで連結します。ただし、空白文字列の場合は無かったものとします。値は2つでなくいくつでも可能。
TEXTJOIN(",",TRUE,"A","B") => "A,B"
TEXTJOIN(",",TRUE,"A","") => "A"

あと、VLOOKUPをやめてXLOOKUPを使うと、色々楽です。
    • good
    • 0
この回答へのお礼

ありがとうございます。勉強になりました。

お礼日時:2024/08/07 14:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A