Excel

【excel】エクセルで数字をばらす(文字を1つずつに分ける:区切る:分割)方法【関数:桁ごとに分けるなど】

当サイトでは記事内に広告を含みます
いつも記事を読んでいただきありがとうございます!!! これからもお役に立てる各情報を発信していきますので、今後ともよろしくお願いします(^^)/

この記事では、エクセルで数字や文字をばらす(1つずつに分ける:区切る)方法について解説していきます。 

こちらの処理としては、主に

・[データ]タブ→「区切り位置」を使用する方法

MID関数とCOLUMN関数を使用する方法

VBAを使用する方法

 を使うことで、数字や文字をばらす(1つずつに分ける:区切る:分割)ことができます。

 では、サンプルを見ていきましょう。

 

エクセルで数字をばらす(1つずつに分ける:区切る)方法1

 エクセルで2桁以上の数字を、1桁ずつ別のセルに分けて表示させる場合、最も簡単な方法は[データ]タブ「区切り位置」を使うとよいです。

 まず、ばらしたい数字が入力されているセルを選択します(サンプルではセルA2に元となる数字を設定しています)。

次に、①[データ]タブを選択し、②[データ]タブ内の「区切り位置」を左クリックします。

「区切り位置指定ウィザード」が開いたら、①「元のデータ形式」の「スペースによって右または左に揃えられた固定長フィールドのデータ」を選択。②「次へ」を左クリックします。

続いて、数字の分けたい箇所に区切り線を追加します。

方法は、「データプレビュー」内の目盛りにカーソルを合わせて、左クリックを押します。すると、数字の間に区切り線が追加されます。

区切り線を追加したら、「次へ」を選択します。

今度は、今分けた数字をどのセルに表示させるかを指定します。

方法は、まず「表示先」の上矢印を左クリックします。

次に、表示させたいセルを選択します(サンプルではセルC2で設定しています)。

最後に、「完了」を選択します。

もし、以下のようなメッセージが表示された場合、「OK」を選択してください。

セルA2の「123456789」がセルC2~K21桁ずつにわかれて表示がされました。

以上が、[データ]タブ→「区切り位置」を使用して数字を1桁ずつにわける方法になります。

 

エクセルで数字をばらす(1つずつに分ける:区切る)方法2【関数】

 

続いて、関数を使って先ほど同様に数字を1桁ずつにばらす方法について解説します。

今回使用する関数は、MID関数とCOLUMN関数です。

 

まず、以下の関数をセルC2貼り付けします。

=MID($A2,COLUMN()-COLUMN($C2)+1,1)

次に、セルC2をコピーします。

そして、①セルD2~K2を選択した状態で、右クリックをします。右クリックメニューから「貼り付けオプション」の「数式の貼り付け」を選択します。

【方法1】同様、セルA2の「123456789」がセルC2~K21桁ずつにばらして表示することができました。

 

エクセルで数字をばらす(1つずつに分ける:区切る)方法3VBA

 最後に、VBAを使用して、マクロの実行により数字をばらす方法について解説します。

VBAコードは以下になります。

 

Sub 各桁に分割して抽出()

    Dim Numbers As String

    Dim i As Integer

   

    ‘ セルA1に入力されている数字を取得

    Numbers = Range(“A2”).Value

   

    ‘ セルA1の桁数を取得し、取得した数字をiとする

    For i = 1 To Len(Numbers)

   

    ‘ セルB1からi列目までに、セルA1を分割して表示

  

        Cells(2, i + 2).Value = Mid(Numbers, i, 1)

    Next i

End Sub

 

まず、①[開発]タブ→②「Visual Basic」を選択します。

Visual Basic」ウィンドウが開いたら、ツール「挿入」「標準モジュール」の順にクリックします。

新規モジュールに、先ほどのVBAコードをコピーして貼り付けします。

貼り付けをしたら、CtrlSを押して一旦保存をします。

作業の途中で、もし以下のダイアログが表示された場合は「いいえ」を押して、マクロ有効のExcelファイル(.xlsm)を新たに作成して保存してください。

では、マクロの実行できるか試してみましょう。

Visual Basic」ウィンドウの「ユーザーフォームの実行」を左クリックします。

 

今度も、【方法1】【方法2】同様、セルA2の「123456789」がセルC2~K21桁ずつにわかれて表示がされました。

 

まとめ エクセルで数字を1つずつに分ける:区切る方法【関数:桁ごとに分けるなど】

 この記事ではエクセルで数字をばらす(1つずつに分ける:区切る)方法について解説しました。

方法は、簡単なものから関数やVBAを使用したものまで沢山ありますので、それぞれの方法を理解し、業務に役立てていきましょう。