Excelの数式:文を単語に分割
Excelでは、ご存知のとおり、Text to Columnsは、区切り文字に基づいて文をセルに分割できます。 しかし、場合によっては、数式を使用して仕事を解決したいことがあります。 このチュートリアルでは、それを処理できる配列数式を提供します。
一般的な式:
=MID(" "&$TXT&" ", SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1))-1) |
Arguments
Number: the sentence or text string you want to split to words in separated cells. |
この式のしくみ
セルB3をインスタンスとして使用すると、次の数式を使用できます。
=MID(" "&$B3&" ", SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1))-1) |
イベント Shift + Ctrl + Enter キーを押して最初の単語を抽出し、すべての単語が抽出されるまで塗りつぶしハンドルを右にドラッグします。
説明
MID function 指定された開始位置と文字数に基づいて、テキスト文字列から部分文字列を抽出します。
ROW function 行数を返します。ここでは、1から99までの配列を返すように設定します。
次に、式 MID( ""&$ B2& ""、ROW($ 1:$ 99)、1)
= MID( "クラスAグレード3リリーコア"、{1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19 ; 20; 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; 37; 38; 39; 40; 41; 42; 43; 44 ; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; 55; 56; 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69 ; 70; 71; 72; 73; 74; 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; 91; 92; 93; 94 ; 95; 96; 97; 98; 99}、1)
= {""; "C"; "l"; "a"; "s"; "s"; ""; "A"; ""; "G"; "r"; "a"; "d" ; "e"; ""; "3"; ""; "L"; "i"; "l"; "y"; ""; "C"; "o"; "r"; "e"; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; "" ; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; " ";" ";" ";" ";" ";" ";
""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; "" ; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; " "}
SEARCH function 指定されたテキスト文字列から特定の文字またはテキストの場所を返します。 文字列が見つからない場合、関数はエラー値を返します。
式 SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 "")
= {1; #VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE !; 1; #VALUE !; 1; #VALUE!;#VALUE!;
#VALUE!;#VALUE!;#VALUE !; 1; #VALUE !; 1; #VALUE!;#VALUE!;#VALUE!;#VALUE !; 1;
#VALUE!;#VALUE!;#VALUE!;#VALUE!;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1}
ISERROR function 値がエラーの場合はTRUEを返します。
次に式 ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))
= {FALSE; TRUE; TRUE; TRUE; TRUE; TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE;
TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
NS}
IF function 特定の条件をテストします。 ここでは3つの引数があり、最初の引数は論理式である必要があります。最初のXNUMXつの引数が「TRUE」の場合はXNUMX番目の引数が表示され、最初の引数が「FALSE」の場合は引数XNUMXが表示されます。
式 IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW($ 1:$ 99))
={1;"";"";"";"";"";7;"";9;"";"";"";"";"";15;"";17;"";"";"";"";22;"";"";"";"";27;28;29;30;31;32;33;34;35;
36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;
64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;88;89;90;91;92;
93;94;95;96;97;98;99}
SMALL function 次に、配列内の最小値を返します。
COLUMN function 数式が表示される列の番号を返すか、指定された参照の列番号を返します。
その後
SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW($ 1:$ 99))、COLUMN(A1))
= {1}
次に、式
SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW($ 1:$ 99))、COLUMN(A1)+1 )-SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW($ 1:$ 99))、COLUMN(A1) )
= {7-1}
= {6}
次に式
MID( ""&$ B3& ""、SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW($ 1: $ 99)+1)、COLUMN(A1))、SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、ROW( $ 1:$ 99))、COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID( ""&$ B3& ""、ROW($ 1:$ 99)、1)、 ""))、 ""、行($ 1:$ 99))、列(A1))-1)
= MID( ""&$ B3& ""、2,6-1)
= {クラス}
サンプルファイル
相対式
- 右から文字まで抽出
ここでは、指定されたテキストの右側から指定された文字までテキストを抽出する式を紹介します。 - テキストをNワードにトリミング
ここでは、テキスト文字列の左側からn個の単語を抽出する式を紹介します。 - 長さを固定するためにリーニングゼロを追加します
このチュートリアルでは、テキストを同じ長さにするために先行ゼロを追加する式を提供します。 - ドルとセントを分割する
Excelの数式を使用して、ドルとセントをXNUMXつの列に分割します。
相対関数
- MID機能
場所と長さに基づいて、セル値からテキストの一部を抽出します。 - COLUMN関数
数式が表示される列の番号を返すか、列番号を返します。 - ROW関数
行数を取得します。 - 検索機能
指定されたテキスト文字列から特定の文字または部分文字列の位置を見つけます。 - IF機能
特定の条件をテストします。
最高のオフィス生産性ツール
Kutools forExcel-群衆から目立つのに役立ちます
🤖 | Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行 | コードを生成 | カスタム数式の作成 | データを分析してグラフを生成する | Kutools関数を呼び出す... |
人気の機能: 重複を検索、強調表示、または識別する | 空白行を削除する | データを失わずに列またはセルを結合する | 数式なしのラウンド ... | |
スーパーVルックアップ: 複数の基準 | 複数の値 | 複数のシートにわたって | ファジールックアップ... | |
上級ドロップダウンリスト: 簡単なドロップダウンリスト | 依存関係のドロップダウン リスト | 複数選択のドロップダウンリスト... | |
列マネージャー: 特定の数の列を追加する | 列の移動 | Toggle 非表示列の表示ステータス | 列を比較する 同じセルと異なるセルを選択する ... | |
注目の機能: グリッドフォーカス | デザインビュー | ビッグフォーミュラバー | ワークブックとシートマネージャー | リソースライブラリ (自動テキスト) | 日付ピッカー | ワークシートを組み合わせる | セルの暗号化/復号化 | リストごとにメールを送信する | スーパーフィルター | 特殊フィルター (太字/斜体/取り消し線をフィルター...) ... | |
上位 15 のツールセット: 12 テキスト ツール (テキストを追加, 文字を削除する ...) | 50+ チャート 種類 (ガントチャート ...) | 40+ 実用的 式 (誕生日に基づいて年齢を計算する ...) | 19 挿入 ツール (QRコードを挿入, パスから画像を挿入 ...) | 12 変換 ツール (数字から言葉へ, 通貨の換算 ...) | 7 マージ&スプリット ツール (高度な結合行, Excelのセルを分割する ...) | ... もっと |
Kutools for Excelは300以上の機能を誇り、 必要なものをワンクリックで手に入れることができます...
Officeタブ-MicrosoftOffice(Excelを含む)でタブ付きの読み取りと編集を有効にする
- 数十の開いているドキュメントを切り替えるのにXNUMX秒!
- マウスの手に別れを告げて、毎日何百ものマウスクリックを減らしてください。
- 複数のドキュメントを表示および編集する際の生産性が 50% 向上します。
- Chrome、Edge、Firefox と同様に、効率的なタブを Office (Excel を含む) にもたらします。