goo blog サービス終了のお知らせ 

パソコン悪戦苦闘記録

Excelの便利機能「フラッシュフィル」

 Microsoftの表計算ソフト Excel は、最近、ほとんど利用していません。
 そのため、Excelが進化して便利機能が追加されているのに、その進化をほとんど知りません。まさに宝の持ち腐れです。もったいないことです。

 今日、久しぶりに仕事でExcelを使い、そんな便利機能のうちの一つを知りました。
 「フラッシュフィル」という機能です。

 フラッシュフィルは、自動的な文字列処理機能です。
 ある列に、文字列データが入っています。その文字データには途中に空白(スペース)や、スラッシュ(/)などの記号が含まれています。
 その記号をExcelが区切り文字として認識して、その区切り文字より前の文字列と、後ろの文字列に分けてくれます。

 操作は、実に簡単。
 「データ」タブの中の「データツール」グループに、「フラッシュフィル」アイコンがあるので、そのクリック一つだけです。

 例えば、次のようなデータ処理です。



 B列に人の氏名データがありますが、姓と名が全角スペースで区切って入力されています。
 C2セルに、「西城」と入力し、「データ」タブの「フラッシュフィル」を押すと、C3セル以降にも自動で姓だけが抽出されて入力されます。
 同様に、D2セルに「秀樹」と入力し、「フラッシュフィル」を押すと、D3セル以降にも自動で名だけが抽出されます。

 区切り文字として認識される記号は、全角でも、半角でもかまいません。
 上に掲載のデータは全角スペースで区切られていますが、これが半角スペースであっても、同様の処理をしてくれます。
 また、区切り文字は、スペースに限りません。スラッシュ(/)などの記号であれば、区切り文字と認識してくれます。

 文字列加工のパターンを、Excelが類推し、一括で自動処理をしてくれるわけです。
 いやぁ、便利ですねぇ。実に便利です。
 こんなにも便利な機能、これまで全然知りませんでした。なんと、もったいないことでしょう。




それでは、また次の記事で
goosyun



《2022年11月20日追記》
 フラッシュフィルでできるのは、文字列分割ばかりではありません。
 文字列の、結合抽出削除 も、一瞬でやってのけます。
    こちらの記事をご覧ください。

コメント一覧(10/1 コメント投稿終了予定)

goosyun
narkejp さん
 当ブログへのコメントありがとうございます。

「2個以上の空白」で区切られたデータの場合、
Excelにかなり昔から装備されている「区切り位置」コマンドでいけます。
 「区切り位置指定ウィザード」中に、
「連続した区切り文字は1文字として扱う」のオプションがあるので、これを使用します。
 なお、素人の憶測ですが、正規表現には対応していないような気がします。
narkejp
Excel もどんどん便利になっていますね。私ならこの手の作業は awk でやってしまい、後から表計算に読み込むところですが、最初から Excel でやれればそれに越したことはないでしょうし。
ところで、「森  昌子」や「森   正」のように2個以上の全角空白で体裁を整えた氏名データの場合はどうなりますか。
これは、事前に「  」等を「 」に全置換しておけば済む話ですが、正規表現は使えるのかどうか。ちょいと興味があります。
名前:
コメント:

※文字化け等の原因になりますので顔文字の投稿はお控えください。

コメント利用規約に同意の上コメント投稿を行ってください。

 

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。
  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最近の「自宅PC」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事