次の方法で共有


CONCATENATE

適用対象: 計算列計算テーブルメジャービジュアル計算

2 つのテキスト文字列を 1 つのテキスト文字列に結合します。

構文

CONCATENATE(<text1>, <text2>)

パラメーター

用語 定義
text1 1 つのテキスト文字列に結合される最初のテキスト文字列。 文字列には、テキストまたは数値を含めることができます。 列参照を使用することもできます。
text2 1 つのテキスト文字列に結合する 2 番目のテキスト文字列。 文字列には、テキストまたは数値を含めることができます。 列参照を使用することもできます。

戻り値

連結された文字列。

備考

  • CONCATENATE 関数は、2 つのテキスト文字列を 1 つのテキスト文字列に結合します。 結合される項目には、テキスト、数値、テキストとして表されるブール値、またはそれらの項目の組み合わせを指定できます。 列に適切な値が含まれている場合は、列参照を使用することもできます。

  • CONCATENATE の DAX 関数は 2 つの引数のみを受け入れますが、Excel CONCATENATE 関数は最大 255 個の引数を受け取ります。 複数の列を連結する必要がある場合は、一連の計算を作成するか、連結演算子 (&) を使用して、それらのすべてを単純な式で結合できます。

  • 列参照を使用するのではなく、テキスト文字列を直接使用する場合は、各文字列を二重引用符で囲む必要があります。

  • この関数は、計算列または行レベル セキュリティ (RLS) 規則で使用する場合、DirectQuery モードでは使用できません。

例: リテラルの連結

このサンプル数式では、引数として指定した 2 つの文字列値を組み合わせて、新しい文字列値を作成します。

= CONCATENATE("Hello ", "World") 

例: 列内の文字列の連結

このサンプル式は、電話帳に記載されている顧客の完全な名前を返します。 入れ子になった関数を 2 番目の引数として使用する方法に注意してください。 これは、引数として使用する 2 つ以上の値がある場合に、複数の文字列を連結する 1 つの方法です。

= CONCATENATE(Customer[LastName], CONCATENATE(", ", Customer[FirstName]))

例: 列内の文字列の条件付き連結

サンプル数式では、顧客テーブルに新しい計算列が作成され、氏名、ミドル イニシャル、姓の組み合わせとして完全な顧客名が作成されます。 ミドル ネームがない場合、姓は名の直後に付けられます。 ミドル ネームがある場合は、ミドル ネームの最初の文字のみが使用され、最初の文字の後にピリオドが続きます。

= CONCATENATE( [FirstName]&" ", CONCATENATE( IF( LEN([MiddleName])>1, LEFT([MiddleName],1)&". ", ""), [LastName]))

この数式では、入れ子になった CONCATENATE 関数と IF 関数をアンパサンド (&) 演算子と共に使用して、条件付きで 3 つの文字列値を連結し、区切り記号としてスペースを追加します。

例: 異なるデータ型を持つ列の連結

次の例では、異なるデータ型を持つ列の値を連結する方法を示します。 連結する値が数値の場合、値は暗黙的にテキストに変換されます。 両方の値が数値の場合、両方の値がテキストにキャストされ、文字列であるかのように連結されます。

製品の説明 製品の省略形 (複合キーの列 1) 製品番号 (複合キーの列 2) 新しく生成されたキー列
マウンテンバイク MTN 40 MTN40
マウンテンバイク MTN 42 MTN42
= CONCATENATE('Products'[Product abbreviation],'Products'[Product number])

CONCATENATE の DAX 関数は 2 つの引数のみを受け入れますが、Excel CONCATENATE 関数は最大 255 個の引数を受け取ります。 引数を追加する必要がある場合は、アンパサンド (&) 演算子を使用できます。 たとえば、次の式では、MTN-40 と MTN-42 という結果が生成されます。

= [Product abbreviation] & "-" & [Product number]

CONCATENATEX