いまさら聞けないExcelの使い方講座
【Excel】文字列の分割・結合を一瞬で処理できる必殺技! 関数いらずのショートカットキー
2022年11月22日 06:55
もう、関数を入力しなくてもいいのでは?
エクセルを使った名簿や管理表を更新する際、フィールド(列)の追加や削除といった表の構造を変更することがあります。列の追加・削除の操作があると、ひとつのセルに入力された文字列も分割したり、結合したりする作業が必要になりますよね。
名簿であれば、氏名を「姓」と「名」、住所を「都道府県名」と「市区町村から後ろ」に分割といった処理です。製品管理表の商品コードから一部を抜き出したり、枝番を追加したりすることもあるでしょう。
このような処理は関数を使うのが定番ですが、一瞬で作業を完了できる「フラッシュフィル」の機能をご存じですか? 試しに氏名から「姓」を取り出してみましょう。
1行目に最終形のデータを入力する手間がありますが、ワンクリックで作業が完了するのは助かりますよね。もう、関数を入力しなくてもいいのでは? と感じる人もいるでしょう。今回は「フラッシュフィル」の動作について詳しく見ていきます。
[Ctrl]+[E]キーのショートカットキーが便利
先ほどと同じように、氏名から「名」を取り出してみましょう。今度は[Ctrl]+[E]キーを押します。リボンのタブを切り替える手間もなく、まさに一瞬です。
結合も同様です。1行目に最終形のデータを入力しておきます。ここでは、姓と名の間に全角スペースを挿入しています。
例えば、文字列の一部を削除するような処理も可能です。
意図通りに動作しないこともある
フラッシュフィルは万能ではありません。意図通りに動作しないケースもあることを覚えておきましょう。以下は、先ほどと同じ操作で、住所から「都道府県名」を取り出した結果です。
問題ないように見えますが、都道府県名が3文字の場合「県」が抜けてしまっています。この例では、フラッシュフィルが「先頭から3文字を取り出す」と認識したためでしょう。フラッシュフィル後に検索・置換で対応しても構いませんが、従来通り関数式で処理するほうがよさそうです。
=IF(MID(F2,4,1)="県",LEFT(F2,4),LEFT(F2,3))
また、エクセルが法則を見つけられない場合、以下のようなメッセージが表示されます。2,3個のデータを入力してから試すとうまくいくこともあります。
ひとまず試してみる価値はある
ショートカットキーで処理できるなら、かなり効率的ですよね。意図通りに動作しないこともありますが、ひとまず[Ctrl]+[E]キーを押してみる価値はあると思いますよ。