
Microsoft Excelが、財務や算数に限らず、様々なタスクで広く利用されている理由の一つは、生データを変換、加工、クリーンアップ、エンリッチメントし、適切な形に加工するための豊富なオプションを備えていることです。ExcelのPower Queryテクノロジー(現在は「取得と変換」と呼ばれています)はデータ変換に非常に優れているため、Power BIデスクトップアプリはこれを基盤としています。これにより、分析、視覚化、さらには機械学習のためのデータを繰り返し前処理できます。
参照:ソフトウェアインストールポリシー(TechRepublic Premium)
Excelの様々なデータ変換ツールは、外部データソースに接続しなくても役立ちます。オンラインフォームやアンケートの回答を修正したり、住所録を整理したり、オンラインソースからコピーしたデータから句読点やHTMLタグを削除したり、クレジットカードの明細書のフォーマットを変更して経費精算書に取引をコピーしたりする必要がある場合、Excelは最適なツールです。日付や通貨の金額が正しくフォーマットされているかを確認したり、為替レートなどの追加データを追加したりすることも可能です(2019年に追加されたXLOOKUP関数はまさにその点で最適です)。
テキストを列に分割する機能(「データ」→「データツール」にあります)は、その名前から想像する以上に多くの機能を備えています。米国形式の日付を含むスプレッドシートを開きましたか?面倒な2つ目のボリュームを作成し、複雑な数式を使って日と月の順序を逆にして英国形式の日付を取得する方法もありますが、「テキストを列に分割」ウィザードを使ってすべてを切り替えることもできます。米国形式の日付を含むセルを選択し、ウィザードの最初の画面で「区切り記号付き」を選択し、2番目の画面で提案されたすべての区切り記号をクリアします。3番目の画面で、日付形式をMDY(月/日/年)に設定します。プレビューはまだ間違っているように見えるかもしれませんが、「完了」をクリックすると、日付は正しい形式になります。

テキストを列に分割する機能は、テキストを複数のセルに分割することもできます。クレジットカード取引の加盟店番号などの余分な情報を削除したり、郵便番号を別のフィールドに移動して住所を場所順に並べ替えたりするのに便利です。取得と変換ツールを使用してデータパイプラインを作成せずに、数百のスプレッドシートでこれを自動的に実行したい場合は、クリック操作が必要なダイアログよりも数式を使用する方が適しています。SEARCH、FIND、LEFT、RIGHT、MID、LEN、SUBSTITUTE、SEQUENCE関数を組み合わせて、カンマなどの区切り文字や単語間のスペースを使ってテキストを分割することもできますが、複雑な正規表現を記述することになります。
参照: Microsoft Lists が新しい Excel である理由 (TechRepublic)
Microsoft 365 サブスクライバー向けの最新の Office Insider ベータ版には、区切り線ウィザードのように動作する新しい関数が追加されています。TEXTSPLIT は、セル内のテキストを複数のセル (区切り記号ごとに 1 つ) に分割します。関数に指定する最初の値は、データが入っているセルです。列または行の区切り記号を指定してテキストの段落を個別の文にする場合は、テキストを複数の列または複数の行に分割できます。これらは関数の 2 番目と 3 番目の値であり、コンマの場合は ","、等号の場合は "=" のように、区切り文字を引用符で囲む必要があります。TEXTSPLIT で複数の区切り記号を同じように処理する場合は、区切り記号を配列としてリストします。TEXTSPLIT(A1,{",",";"}) は、コンマとセミコロンの両方で区切られたテキストを分割します。
または、行と列の両方の区切り文字を TEXTSPLIT に伝えることで、テキストを配列 (Excel ではテーブルとしてフォーマットされていないテーブル) に変換することもできます。

セルA1に「Red=54,Yellow=16,Purple=99」というデータがある場合、TEXTSPLIT(A1,”,”) は3つの新しいセルを作成します。最初のセルには「Red=54」、次のセルには「Yellow=16」、3番目のセルには「Purple=99」というデータが含まれます。TEXTSPLIT は動的配列を使用するため、テキストは必要な数のセルに分割されます(分割された配列によって既にデータが入っているセルが上書きされる場合は、データが誤って失われないようにエラーが発生します)。
データ量が一定でなくても、常に同じ列数または行数にする必要がある場合は、TEXTPLIT関数に、2つの区切り文字が並んでいてその間に値がない場合に空のセルを作成するように指示できます。デフォルトでは、TEXTSPLIT関数は空の値を無視しますが、関数の4番目の値にTRUEを指定すると、空のセルが追加されます。
セルからテキストの一部だけをコピーしたい場合は、TEXTBEFOREとTEXTAFTERを使用します。区切り文字の指定方法は同じですが、リスト内のどの項目を取得するか(1は最初の項目、2は2番目の項目、-1は最後の項目、-2は最後から2番目の項目)も指定します。2つの関数の違いは、区切り文字の前後のテキストを取得するかどうかです。これは特に便利な機能で、区切り文字として通常の句読点を使用する必要はありません。テキストをコピー開始位置のマーカーとして使用したり、スペースを使って名前を姓と名に分割したりできます。
列で整列したデータを行で整列させたい場合(またはその逆)、コピー&ペーストで転置することで並べ替えることができます。データの形状を変更するための新しい関数を使えば、数式を使って同じ操作を行うことができます。TOROWは配列を1行に変換し、TOCOLは配列を1列に変換し、WRAPROWSとWRAPCOLSは行と列を配列に変換します。
VSTACKとHSTACKを使って2つの配列を結合することもできます。配列を上下または左右に積み重ね、間に空セルがあれば削除します。また、コンテンツが既に複数のセルに分散されている場合は、配列の先頭または末尾から、必要な列と行を指定する(CHOOSEROWSとCHOOSECOLS)、または保持する行と列(TAKE)または無視する行と列(DROP)を指定することで、配列から列と行を取得できる関数があります。
Excel では、テーブル内の列をターゲットにすることはすでにかなり簡単にできますが、配列の操作はそれほど簡単ではありませんでした。現在では、複数の結果を返す数式によって結果がセルの動的配列に出力されるため、それらの配列内の列と行をターゲットにする関数があると非常に便利です。
自動リスト
テキストを入力する際に、製品名、会計カテゴリ、住所の州の略称など、実質的にリストから選択する項目の一貫性を確保したい場合は、Excelでドロップダウンリストを作成できます。ドロップダウンリストを作成するには、「データ」→「データの入力規則」を選択し、「設定」タブの「入力規則」ボックスで「リスト」を選択します。リストに表示される内容はスプレッドシート上のテーブルを使用して簡単に拡張できます。テーブルを別のタブに配置し、「ソース」ボックスで選択できます(リストの内容を変更できないようにしたい場合は、タブを非表示にするかロックしてください)。
しかし、リストに数百、数千ものエントリがあり、ユーザーがスクロールしたり、正確に入力したりする必要がある場合、これは扱いにくくなります。コンボボックスフォームコントロールを追加して、ユーザーが入力を開始すると、Excelが入力内容に一致するリストのエントリをセルに自動的に入力するようにすることもできますが、これはもはや標準セルではありません(また、オートフィルを使用して列内のすべてのセルにドロップダウンリストを追加するのではなく、リストを使用するすべての場所にコンボボックスを作成する必要があります)。
これは非常に一般的な要望であるため、Excelの拡張機能で対応しており、Microsoftはついにドロップダウンリストにオートコンプリート機能を追加しました。特別な操作は必要ありません。データの入力規則機能を使って通常通りドロップダウンリストを作成し、リストをクリックして開いたら、入力して絞り込みを開始できます。一致する項目が1つだけの場合はオートコンプリートされますが、複数あっても選択肢は大幅に少なくなります。

Office Insiderベータ版のすべての機能と同様に、これらの機能は完全リリース前に変更されたり、廃止されたりする可能性があります。ドロップダウンオートコンプリートは既に削除され、書き換えられて再リリースされており、4月にはセルを選択して入力を開始する機能から、入力前にドロップダウンリストを開く機能に変更されました。これは一部のユーザーにとってフラストレーションの原因となっており、Microsoft Flight SimulatorのOffice機能の仕様により、最新バージョンのOffice Insiderをお持ちであってもビルドに表示されない場合があることも問題となっています。
新機能は一部のユーザーにリリースされます。テレメトリによってクラッシュ、パフォーマンスの問題、その他の問題を引き起こさないことが示された場合、段階的に多くのユーザーにリリースされます。これらの段階的なリリースは、組織内またはOffice 365テナントの全員に機能を有効にするのではなく、多くの場合、全ユーザーを対象に行われます。これは、Microsoftが最も幅広いハードウェアおよびソフトウェア構成、ネットワークトポロジ、帯域幅などをテストできるためです。(機能が有効になっている場合は、「ファイル」、「アカウント」、「新機能」に表示されるはずですが、機能リストが長すぎて簡単には検索できません。また、ドロップダウンリストを作成するためのダイアログボックスは、新機能が有効になっているかどうかに関係なく、見た目が変わりません。)
もしそれがユーザーにとって煩わしい(または混乱を招く)場合は、ベータ版(サポート対象外でテスト環境向けにのみ設計されている)を使用していないことを確認してください。現在のチャネル(プレビュー)には、次のリリースに含まれる機能が含まれているため、ユーザーは早期に試用でき、サポートも受けられます。ただし、Office Insider ビルドを使用しているすべてのユーザーが同時に新機能を利用できるとは限りません。そのため、予測不可能な場合があることをユーザーに伝えてください。