Excelでセルを分割する方法(複数の列に分割)
Excelでセルを分割する必要がある場合があります。これは、データベースからデータを取得する場合、インターネットからデータをコピーする場合、または同僚から取得する場合です。
Excelでセルを分割する必要がある簡単な例は、フルネームとこれらを名と姓に分割します。
または、住所を取得し、住所を分割して、都市またはPINコードを個別に分析できるようにします。
このチュートリアルの内容:
Excelでセルを分割する方法
このチュートリアルでは、分割する方法を学習します次の手法を使用したExcelのセル:
- テキストから列への機能の使用。
- Excelのテキスト関数の使用。
- フラッシュ塗りつぶしの使用( 2013年と2016年)。
始めましょう!
テキストを列に使用してExcelでセルを分割する
以下にいくつかの名前のリストを示します。私のお気に入りの架空の人物の名前で、これらの名前を別々のセルに分割したいと思います。:
これが分割する手順ですこれらの名前を名前と名前に変換します。
- 分割するテキストがあるセル(この場合はA2:A7)を選択します。
- [データ]タブをクリックします
- [データツール]グループで、[テキストから列]をクリックします。
- Inテキストから列への変換ウィザード:
- テキストから列へのウィザードのステップ1/3:[区切り]が選択されていることを確認します(これがデフォルトの選択です)。これにより、指定した区切り文字(この場合はスペースバー)に基づいて名前と名前を区切ることができます。
- [次へ]をクリックします。
- ステップ2/3テキストから列へのウィザード:区切り文字として[スペース]を選択し、それ以外はすべて選択解除します。ダイアログボックスの[データプレビュー]セクションで、結果がどのように表示されるかを確認できます。
- [次へ]をクリックします。
- ステップ3/3テキストから列へのウィザード:このステップでは、データ形式と結果を表示する場所を指定できます。分割するテキストデータがあるので、データ形式は一般のままにします。デフォルトの宛先はA2であり、これを続行すると、元のデータセットが置き換えられます。元のデータをそのまま保持する場合は、宛先として別のセルを選択します。この場合、B2が選択されています。
- [完了]をクリックします。
これにより、セルのテキストが即座に2つの異なる列に分割されます。
注:
- テキストから列への機能は、区切り文字に基づいてセルの内容を分割します。これは、名と名前を分離する場合はうまく機能しますが、名前、ミドルネーム、ラストネームの場合は、3つの部分に分割されます。
- を使用して得られる結果テキストから列への機能は静的です。つまり、元のデータに変更があった場合、更新された結果を取得するには、このプロセスを繰り返す必要があります。
テキスト関数を使用してExcelでセルを分割する
Excelテキスト関数は、テキスト文字列をスライスおよびダイスする場合に最適です。
テキストから列への機能は静的な結果を提供しますが、関数を使用して得られる結果は動的であり、次の場合に自動的に更新されます。元のデータを変更します。
名と姓を持つ名前の分割
次のような同じデータがあるとします。
名の抽出
このリストから名を取得するには、次の式を使用します。
=LEFT(A2,SEARCH(" ",A2)-1)
この式は、最初のスペース文字を見つけて、そのスペース文字の前にあるすべてのテキストを返します。
この式は、SEARCH関数を使用してスペース文字の位置を取得します。ブルースウェインの場合、スペース文字は6番目の位置にあります。次に、LEFT関数を使用して、左側のすべての文字を抽出します。
姓の抽出
同様に、姓を取得するには、次の式を使用します。
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2))
この式は、検索関数を使用して、を使用してスペースバーの位置を検索します。 SEARCH機能。次に、名前の全長(LEN関数によって指定される)からその数を減算します。これにより、姓の文字数がわかります。
この姓は、RIGHT関数を使用して抽出されます。
注:これらの関数は、先頭にある場合はうまく機能しない可能性があります。名前の末尾または二重スペース。 Excelで先頭/末尾/二重スペースを削除する方法については、ここをクリックしてください。
名、ミドルネーム、および姓を持つ名前の分割
場合によっては一部の名前にもミドルネームがある名前の組み合わせを取得します。
このような場合の式は少し複雑です。
名の抽出
名を取得するには:
=LEFT(A2,SEARCH(" ",A2)-1)
これは、ミドルネームがない場合に使用した式と同じです。最初のスペース文字を検索し、スペースの前にあるすべての文字を返すだけです。
ミドルネームの抽出
ミドルネームを取得するには:
=IFERROR(MID(A2,SEARCH(" ",A2)+1,SEARCH(" ",A2,SEARCH(" ",A2)+1)-SEARCH(" ",A2)),"")
MID関数は、最初のスペース文字から開始し、最初と2番目のスペース文字の位置の差を使用してミドルネームを抽出します。
ある場合ミドルネームがない場合、MID関数はエラーを返します。エラーを回避するために、IFERROR関数でラップされています。
名前の抽出
名前を取得するには、次の式を使用します。
=IF(LEN(A2)-LEN(SUBSTITUTE(A2," ",""))=1,RIGHT(A2,LEN(A2)-SEARCH(" ",A2)),RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2)+1)))
この式は、ミドルネームがあるかどうかをチェックします(スペース文字の数を数えることによって)。スペース文字が1つしかない場合は、スペース文字の右側にあるすべてのテキストを返すだけです。
ただし、スペース文字が2つある場合は、2番目のスペース文字を見つけて、その後の文字数を返します。 2番目のスペース。
注:これらの式は、最初の名前と姓のみ、または名、中間、姓のいずれかを持つ名前がある場合にうまく機能します。ただし、接尾辞や敬礼があるミックスがある場合は、式をさらに変更する必要があります。
Flash塗りつぶしを使用してExcelでセルを分割する
Flash塗りつぶしはExcel2013で導入された新機能。
パターンがあり、その一部をすばやく抽出したい場合に非常に便利です。
たとえば、名を付けましょう。および姓のデータ:
フラッシュ塗りつぶしは、パターンを識別し、他のすべてのセルに複製することで機能します。
フラッシュフィルを使用してリストから名を抽出する方法は次のとおりです。
- セルB2に、ブルースウェイン(ブルースなど)の名を入力します。
- セルを選択すると、セル選択の右端に小さな正方形が表示されます。それをダブルクリックします。これにより、すべてのセルに同じ名前が入力されます。
- セルが入力されると、右下に[自動入力オプション]アイコンが表示されます。それをクリックします。
- リストからフラッシュフィルを選択します。
- Asフラッシュフィルを選択するとすぐに、すべてのセルが自動的に更新され、各名前の名が表示されるようになります。
フラッシュフィルの仕組み
フラッシュフィルはデータセット内のパターンを探し、そのパターンを複製します。
フラッシュフィルは驚くほどスマートな機能であり、ほとんどの場合期待どおりに機能します。ただし、場合によっては失敗することもあります。
たとえば、名前の組み合わせにミドルネームのある名前とない名前のリストがある場合。
このような場合にミドルネームを抽出すると、名がない場合にFlashFillが誤って姓を返します。
正直なところ、それはまだトレンドの良い近似です。しかし、それは私が望んでいたものではありません。
それでも、必要に応じて武器を保管して使用するには十分なツールです。
フラッシュフィルのもう1つの例を次に示します。見事に機能します。
都市をすばやく抽出したいアドレスのセットがあります。
都市をすばやく取得するには、最初の住所の都市名を入力し(この例では、セルB2にロンドンを入力)、自動入力を使用してすべてのセルを入力します。ここでFlashFillを使用すると、各住所から都市の名前がすぐにわかります。
同様に、住所を分割して、住所の任意の部分を抽出できます。
これに注意してください。アドレスは、同じ区切り文字(この場合はcomma)を持つ同種のデータセットである必要があります。
パターンがないときにFlash塗りつぶしを使用しようとすると、次のようなエラーが表示されます。以下:
このチュートリアルでは、Excelのセルを複数の列に分割する3つの異なる方法について説明しました(テキストを使用して列、数式、およびフラッシュ塗りつぶし)
このExcelチュートリアルがお役に立てば幸いです。
次のExcelチュートリアルもお気に召すかもしれません:
- 方法Excelでセルをすばやく結合するには。
- 数式を使用してExcelでサブ文字列を抽出する方法。
- テキスト文字列を含むセルをカウントする方法。
- からユーザー名を抽出するExcelのメールID。
- セル内の複数の行を別々のセル/列に分割する方法。