この記事では、excel に関する関連知識を提供します。主に、複数のデータを 1 つのセルに結合することに関する関連問題を紹介します。作業には常にいくつかの特別な問題があります。要件、最も厄介なことは、条件に合致した複数の結果を一つのセルにまとめて表示してみますので、皆さんのお役に立てれば幸いです。
関連する学習の推奨事項: excel チュートリアル
職場では常に特別なニーズがいくつかありますが、最も厄介なのは多すぎることです。条件を満たす結果が 1 つのセルにまとめられます。
たとえば、下の写真を見てください。
列 A は会社の部門名、列 B は個人の名前です。
F 列の対応するセルに、同じ部門の担当者の名前をカンマで区切って入力する必要があります。
この問題の解決策について話しましょう:
最初に C2 に数式を入力します:
=IF(A2=A1,C1&","&B2, B2)
塗りつぶしを下にコピーします。
F2 入力式:
=LOOKUP(1,0/(E2=$A$2:$A$9),C$2: C$9)
下にコピーして入力すると、最終結果が得られます。
このソリューションでは、補助列方式を使用します。
C 列は補助列であり、単純な IF 関数です。
C2 の式を例に挙げます。
=IF(A2=A1,C1&","&B2,B2)
最初に決定します。 A2とA1の値が等しいかどうかの合計。等しい場合はC1&","&B2を返し、そうでない場合はB2を返します。
ここでは A2 と A1 の値が等しくないため、式は B2「朱紅忠」の値を返します。
数式をコピーして下に入力すると、数式で得られた結果が、その数式が配置されているセルの下にある次の数式で使用され、名前が蓄積される効果が形成されます。
たとえば、セル C3 の数式:
=IF(A3=A2,C2&","&B3,B3)
値A3 と A2 が等しい場合、真の値 C2&”,”&B3 を返します。
C2 は、前の式で返された結果 B2 (朱紅忠) で、B3 の値は「Xingguang」なので、C3 の最終結果は「朱紅忠、興光」になります。
補助列の式の入力が完了したら、一般的に使用される LOOKUP 関数ルーチンが列 F で使用され、最終結果が得られます:
=LOOKUP(1,0/(E2 =$A $2:$A$9),C$2:C$9)
この LOOKUP ルーチンはエラー値を無視し、常に最後に修飾された結果を取得します。これは次のように要約できます:
=LOOKUP(1,0/(条件領域=指定した条件), 返される対象領域)
この式は0/(E2=$A$2:$で始まります) A$9 ) は、0 とエラー値 #DIV/0! で構成されるメモリ配列を構築し、常に 0 より大きい 1 を検索値として使用し、次の部門を満たす最後の列 C の結果を見つけます。 E2、つまり列 A の最後の広告 部分に対応する列 C の値: C2。
Excel 2019 以降を使用している場合は、TEXTJOIN 関数を使用できます。この関数は、WPS テーブルの最新バージョンでも使用できます。セル F2 に次の数式を入力し、Shift Ctrl キーを押しながら Enter キーを押し、OK を押します。
=TEXTJOIN(",",1,IF(A$2:A$9=E2,B$2:B$9,""))
TEXTJOIN 関数の使用法は次のとおりです:
=TEXTJOIN (スペース記号、空のセルを無視するかどうか、結合するコンテンツ)
数式では、マージされた内容は次のとおりです。
IF(A$2:A$9=E2,B$2:B$9,"")
つまり、A$2:A$9 が等しい場合E2 に B $2 を返します: B$9 に対応する内容、それ以外の場合は空のテキスト "" が返され、結果はメモリ配列になります:
{"Zhu Honzhong";"Xingguang";""; "";"";"";" ;""}
TEXTJOIN 関数は、IF 関数によって取得されたメモリ配列をマージします。最初のパラメータは区切り記号としてカンマを指定し、2 番目のパラメータは 1 を使用します。これは、メモリ配列内の空のテキストが無視されることを意味します。
関連する学習の推奨事項: Excel チュートリアル
以上がExcelでデータを1つのセルに結合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。