フラッシュフィルと関数どっちを使う?できること・できないことを比較【EXCEL】

機能(excel-features-series)

一度きりの加工はフラッシュフィル、元データの変更に追従させるなら関数

  • フラッシュフィルなら、規則性のあるデータをすばやく整形できます。
  • 関数を使わなくても処理できるため、一度きりのデータ加工にも便利です。
  • 一方で、元データを変更したあとも結果を連動させたい場合は関数が向いています。
  • 同じように見える処理でも、フラッシュフィルと関数では得意なこと・苦手なことが異なります。
  • この記事では、できること・できないことを比較しながら、実務での使い分けをわかりやすく解説します。

演習1:フラッシュフィルで商品コードから店舗名を取り出す

次の商品コードから「店舗名」だけを取り出してください。
今回は一度きりのデータ加工として、関数を使わずフラッシュフィルで処理します。

【操作】

  1. 「店舗名」列の1件目に「仙台」と入力します。
  2. 「店舗名」列のセルを選択します。
  3. Ctrl + E を押して、フラッシュフィルを実行します。
  4. 「名古屋」「大阪」「福岡」「札幌」が正しく入力されたことを確認します。
  5. 3つのサンプルすべてで同じ操作を行い、区切り方が違っても店舗名を取り出せるか確認してみましょう。

【解説】

フラッシュフィルは、「-」や「@」など特定の区切り記号を指定して文字を取り出しているわけではありません。
入力した「仙台」という例をもとに、元データの並び方から規則性を判断して残りのデータを自動入力します。

そのため、

  • 「仙台-105」のように同じ記号で区切られているデータだけでなく、
  • 「名古屋@208」「大阪 312」のように区切り方が異なるデータでも、規則性を判断できれば処理できる場合があります。

また、空白の数が一定でないデータでも、期待する結果を入力例から判断できればフラッシュフィルで処理できる場合があります。

ただし、フラッシュフィルはExcelが入力例から規則性を判断するため、すべてのデータで必ず意図した結果になるとは限りません。実行後は結果を確認することが大切です。

【ポイント】

  • フラッシュフィルは特定の区切り記号だけを対象にする機能ではありません。
  • 入力した例から規則性を判断して、残りのデータを自動入力します。
  • 区切り記号や空白の数にばらつきがあっても処理できる場合があります。
  • 関数を組み立てなくても、一度きりのデータ加工なら短時間で処理できます。
  • ただし、元データをあとから変更しても結果は関数のようには連動しません。

演習2:フラッシュフィル実行後に元データを変更してみる

演習1でフラッシュフィルを使って店舗名を取り出しました。
今度は、左側の商品コードを変更して、取り出した店舗名がどうなるか確認してみましょう。

元データを変更しても変わりません

【操作】

  1. フラッシュフィルを使って、店舗名を取り出します。
  2. 「仙台-105」を「東京-105」に変更します。
  3. 右側の「店舗名」を確認します。
  4. 「東京」に変わるか、それとも「仙台」のままなのか確認してみましょう。

【解説】

フラッシュフィルで入力された結果は、数式ではなく値として入力されています。
そのため、元データの「仙台-105」を「東京-105」に変更しても、右側の「仙台」は自動では「東京」に変わりません。

一度だけデータを整形するなら、フラッシュフィルは非常に便利です。
一方、元データがあとから変更される表では、変更に合わせて結果も更新したい場合があります。
そのような場合は、フラッシュフィルではなく関数を使う方法が向いています。

【ポイント】

  • フラッシュフィルの結果は数式ではなく値として入力されます。
  • 元データを変更しても、取り出した結果は自動では更新されません。
  • 一度きりのデータ加工ならフラッシュフィルが便利です。
  • 元データの変更に結果を追従させたい場合は関数が向いています。
  • 「速く加工する」のか「変更に対応できる仕組みにする」のかで使い分けることが大切です。

演習3:関数なら元データの変更に結果が追従する

演習2では、フラッシュフィルで取り出した結果は元データを変更しても自動では変わりませんでした。
今回は同じ処理を関数で行い、元データを変更したときの違いを確認してみましょう。

【操作】

  1. 店舗名の先頭セルに次の数式を入力します。
    =TEXTBEFORE(対象範囲,"-")
  2. 店舗名がスピルして表示されることを確認します。
  3. 次に、「-」「@」「/」が混在したデータでも同じ考え方で処理できるか確認してみましょう。

【解説】

すべて「-」で区切られているデータであれば、TEXTBEFORE 関数で「-」より前の文字を取り出すことで、店舗名をまとめて取得できます。
一方、「-」「@」「/」のように区切り記号が統一されていない場合、「-」を基準にした TEXTBEFORE 関数だけではすべてのデータを同じように処理できません。

ここがフラッシュフィルとの大きな違いです。フラッシュフィルは入力例から規則性を判断するため、区切り記号にばらつきがあっても目的の店舗名を取り出せる場合があります。

関数は処理ルールを明確に指定でき、元データが変更されたときにも結果を更新できますが、データの状態に合わせて数式を設計する必要があります。

【ポイント】

  • 区切り記号が統一されているデータは、関数で処理しやすいです。
  • 関数なら元データの変更に結果を追従させられます。
  • 区切り記号がバラバラの場合は、単純な TEXTBEFORE 関数だけでは対応できません。
  • フラッシュフィルは表記ゆれのあるデータでも規則性を判断できる場合がります。
  • 「フラッシュフィルか関数か」は、データの状態と今後の運用を考えて選びましょう。

まとめ|フラッシュフィル/関数は目的に合わせて使い分ける

  • 一度きりのデータ加工をすばやく行いたい場合は、フラッシュフィルが便利です。
  • フラッシュフィルは入力例から規則性を判断するため、区切り記号にばらつきがあるデータにも対応できる場合があります。
  • 元データを変更しても、フラッシュフィルで入力した結果は自動では更新されません。
  • 関数は処理ルールを数式として残すことができ、元データの変更にも結果を追従させられます。
  • 「一度きりの加工ならフラッシュフィル」「変更に追従させるなら関数」を基本に、データの状態や運用方法に合わせて使い分けましょう。

Excel無料テンプレート|基礎・実務で使えるダウンロードファイル集

この記事の講習問題は、無料ファイル倉庫からダウンロードして、
実際のExcelシート上で手を動かしながら理解を深めてください。
安心して使える学習用ファイルで、初心者でもそのまま再現できます。
Excelの実務ロジックが自然と身につく、無料の学習教材です。

講習問題では理解できたら、黄色のセルに入っている計算式を一度消して、実際に自分で入力してみてください。
計算式を消しても、メモ欄に保存してある式を貼り付ければ元の状態を復元できます。
練習と復元を繰り返すことで、計算式の構造が安定して身につきます

👉“フラッシュフィル”

📘 10月中旬発売予定|スピル関数完全体系学習版【全251問・¥980】
「関数を知っている」から「実務で使える」へ
基礎から応用まで、実際にExcelを操作しながら学ぶ全251問
▶ 教材内容・全251問のロードマップを先行公開中
※ UNIQUE関数(全15問)無料体験版を公開中

タイトルとURLをコピーしました