こんにちは。開発チーム 山本です。
今回は複数のセルの文字データを結合する方法と、一つのセル内の文字を分割する方法をご紹介します。
■複数のセルの文字データを結合する
下の図は、名前が複数のセルに分かれて入力されているデータです。
Dのセルに、結合した名前を反映させたいと思います。
1つ目の式はとてもシンプルです。
D1のセルに
=A1&B1&C1
と入力します。
セルとセルを「&」で繋げる、とても分かりやすい式です。
ちなみにA1、B1、C1は、直接入力しなくてもセルを選択すると自動で入力されます。
「ENTER」キーを押すとD1に結合された名前が反映されます。
D1のセルを下にコピーすれば、2・3行目にも反映されます。
B3のセルは空白ですが、エラーにならずに反映されます。
もう一つは、「CONCATENATE」関数を使った方法です。
数式バーにある「fx」マークをクリックし、関数名一覧から「CONCATENATE」し、「OK」クリック。
※一覧にない場合は、「関数の検索」欄に関数名(CONCATENATE)を入力し検索開始ボタンを押してください。
「関数の引数」というウィンドウが出ます。
初期画面には「文字1」「文字2」の表示しかありませんが、セルを選択すると「文字3」「文字4」・・・と表示され、最大255個、文字数としては8,192文字まで繋げる事ができます。
一つのセルにまとめたい文字列と、挿入したい文字や記号を並べたい順番に指定し、OKボタンをクリックします。
今回は、それぞれの入力されたセルとセルの間に「・(中点)」を挿入してみます。
関数の引数ウィンドウの文字列欄につなげたい順番にセルを選択します。
「・」は直接入力します。なお、「・」の両側に入力されている「” ”」は自動的に追加されます。
また、文字と文字の間にスペースを挿入したい場合も、文字列の欄にスペースを入力すれば反映されます。
指定したセルの文字列と「・」が挿入された名前が一つのセルに表示されました。
セル内のデータは計算式になっており、不要になったA~C列を削除するとD1のデータも消えてしまうので、D1をコピー、右クリックの「形式を選択して貼り付け」で「値」を選択し貼り付けすることをお忘れなく。
「名前の最後に「様」を付けたい」
「二つのセルに分かれた住所を一つにまとめたい」
「品番と品名の間にスペースで挟んで一つのセルにまとめたい」
などなど、文字列を一つにまとめたり追加したりする際には是非ご活用ください。
■一つのセルに入力された文字列を分割する
複数のセルに分かれた文字列をまとめるのはとてもシンプルですが、一つのセルに入力された文字列を分割する場合は少し条件が必要です。
下の表は、苗字・名前・年齢が「スペース」で区切られているデータです。
一つのセルに入っている文字列を分割する際は、分割したい文字と文字の間にスペースや「@」等、区切る目印として何か共通する記号が入っている必要があります。
※ただし、スペースなどの記号が挟まっていなくても、区切りたい文字数が共通している場合(全てのセルの前から〇文字目と〇文字目で区切る)は「位置で区切る」事も可能です。
分割したいセルを範囲指定し(今回の場合はA列)
「データ」→「区切り位置」をクリック。
「区切り位置指定ウィザード」が表示されます。
元のデータの形式欄で
「コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」
を選択し「次へ」をクリック。
どの文字列で区切るかを指定します。
今回はスペースで区切られているデータなので、「区切り文字」欄で「スペース」にチェックを入れます。
もしリストに無い記号や文字で区切られている場合は、「その他」にチェックを入れ、右の空欄に対象の記号や文字を入力してください。
区切り文字を指定すると、下段プレビュー画面に表示されたデータの区切る位置にラインが入ります。
希望通りに区切られていたら「次へ」をクリック。
区切った後の列のデータ形式を指定できます。
今回はすべて文字列なので、デフォルトの「標準」もしくは「文字列」を選びます。
もし、数字が入力された列を日付にしたい場合は「日付」を選択し、右の欄(下記図で「YMD」と表示されている所)で表示方法を選択します。
それぞれの列のデータ形式を指定したら「完了」をクリック。
A列に入力されていた文字が、スペースで区切られB・C列に分かれて表示されました。
* * * * * * * *
システムからエクスポートした時や、反対にシステムへインポートする時等、
「一つのセルにまとめないといけない」
「セルを分けないといけない」
と、その時々で表現したい事がバラバラです。
毎日の様に行う作業でなければなかなか覚えにくいかと思いますが、この記事を最後まで読んでいただけた方には「そういえばあのコラムに書いてたな・・・」と思い出して参考にしていただけると幸いです。