Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 11 Home : Microsoft 365)
TEXTSPLIT関数で複数行
投稿日時: 22/10/02 11:11:57
投稿者: toma100

こんにちは、よろしくお願いいたします!
 
365でTEXTSPLIT関数が追加されたので
スペースで区切ったデータに使ってみましたが
以下のように複数行ある場合
 
田中 東京都 25歳
大井田 鹿児島県 26歳
 
=TEXTSPLIT(A1:A2," ")として
複数セルを選択すると
田中
大井田
 
のように1列目しか求められません
かなり複数行で複数のスペースで区切っているので
=TEXTSPLIT(A1:A100," ")
のようにしたいのですが、列ごとに求めるしかないのか、
=TEXTSPLIT(A1," ")
として、100行分コピーするしかないのでしょうか?
よろしくお願いいたします。
 
 
 

回答
投稿日時: 22/10/02 13:52:15
投稿者: 半平太

TEXTJOINで一つにしてから、行列に分解してみたらどうでしょうか?
 
=TEXTSPLIT(TEXTJOIN("-",TRUE,A1:A100)," ","-",FALSE,,"")
 
※各データがきちんと存在してない場合、どうなるかちょっと不安ですが。
 
 

回答
投稿日時: 22/10/02 18:32:33
投稿者: WinArrow
投稿者のウェブサイトに移動

表データのレイアウト(セル)と
 
数式の入力セルと意図する結果
を説明して貰えますか?

投稿日時: 22/10/02 19:56:13
投稿者: toma100

半平太様
TEXTJOINで1つにするんですね!
ありがとうございました!
 
 
 WinArrow様
ありがとうございます!
 
A列に100行くらいあります
 
A
田中 東京都 25歳
大井田 鹿児島県 26歳


 
これを以下の3列にしたくて
 
氏名 都道府県 年齢
=TEXTSPLIT(A1:A100," ")
 
としたのですが、氏名の列しか求められない、こんな状況です。。

回答
投稿日時: 22/10/02 21:40:37
投稿者: WinArrow
投稿者のウェブサイトに移動

セルA1にあるデータを、セルB1、C1,D1に分解するつもりでしたら
セルB1に
>=TEXTSPLIT(A1," ")
でよいと思います。
 
100件が面倒だというのでしたら
セルB1のカーソルを置き、右下をダブルクリックすれば、A列の件数だけ数式が複写されます。
 

回答
投稿日時: 22/10/02 23:02:32
投稿者: WinArrow
投稿者のウェブサイトに移動

関数ではないが
「区切り位置」というコマンドを使っても、分割できます。
 
関数では、元データが変更されると、反映されます。
100件を一度に数式を入力する方法は、
前レスのせルB1〜B100を選択しておいて、B1に数式を入力して[Enter]を押すと
一気に100セルに数式が入力可能です。
 
「区切り位置」は、A列100件を選択した状態で
コマンドを実行すれば、一気に100件分割可能です。
出力先を指定しなければ、A列が最初のデータになります。(元データはなくなります)
出力先を指定した場合で、元データを変更した場合は、再度、同じ操作を実行します。
 
 

投稿日時: 22/10/02 23:36:27
投稿者: toma100

WinArrow様、ありがとうございました!
ダブルクリックしてコピーしてやります。
区切り位置ウィザードも。教えて頂きありがとうございました!