エクセル練習問題
スピルを使って文字列を1セルずつに分解解答

エクセルの関数・操作のちょっと難しい問題、Excelチャレンジ問題集
公開日:2013年5月以前 最終更新日:2020-09-07

スピルを使って文字列を1セルずつに分解解答

エクセル練習問題解答ページです。

エクセル練習問題

2019年にOffice365のExcelに実装された革新的な機能としてスピルがあります。
スピルを上手に使うと、今まで多くの作業列を使う必要があったものが、かなり簡略化された数式で実現することができます。
スピルの詳細については、以下を参照してください。
スピルについて| エクセル入門
2019年にOffice365のExcelに実装された革新的な機能としてスピルがあります。数式を入力したセルから結果があふれて隣接したセルにも出力されるのがスピルです。今までは数式を入れたセルにしか結果を出せませんでしたが、スピルでは隣接するセルにまで結果が表示されます。
問題1
A1セルに、
「いろはに…」
このような文字列が入っています。
文字数不定数です。

この文字列を分解して、B1セル以降に1文字ずつ出力してください。

エクセル Excel 練習問題 スピル

スピルの問題ですので、
B1セルに数式を入れるだけで、C列以降はスピルで表示されるようにしてください。

問題2
問題1を複数行対応させてください。

エクセル Excel 練習問題 スピル

問題1の発展問題です。
B1セルに数式を入れるだけで、2行目以降もC列以降も同時にスピルで出力されるようにしてください。


どちらの問題も、スピルを使う事で1つの数式で実現できます。

スピルを使わない場合は、
B1=MID($A1,COLUMN()-1,1)
として、B1セルを出力範囲にコピーすることで1文字ずつに分解できます。
文字数が決まっていれば良いのですが、不定数の場合はあらかじめ大きめの範囲に数式を設定しておく必要があります。
スピルなら、先頭セルに入れるだけで出力範囲が自動で決まります。

では、お考えください。
すぐに解答を見ずに、必ず自力でやれるだけやってみましょう。

シンキングタイム

シンキングタイム開始


シンキングタイム終了

当サイトのコンテンツ
自分に合った、学習方法を見つけましょう。

エクセル入門
エクセル作業において必須となるショートカットキーから基本の操作、機能、そして覚えておくべき関数とその使い方までを、入門・初級・初心者向けに解説しています。エクセルには多くの関数がありますが、どの業種でも必要とされる関数に絞って紹介しています。
エクセル基本操作
エクセルの基本操作について解説。知ってそうで知らない操作や高度な操作まで。日付、時刻に関するあれこれ 数値の書式のあれこれ1.千単位、百万単位2.不要な0を表示せずに、小数点位置を揃える3.ユーザー定義書式で条件付き書式を使う4.Excel2003で、条件によりフォント色を5段階で表示する方法。
エクセル関数応用
エクセルの関数の応用技の解説。関数サンプルと必須の基本技術から応用・高等テクニックまでを紹介しています。1年後の日付、○か月後の日付 複数条件の合計・件数・サンプルデータ・複数条件の合計・複数条件の件数・スピルと新関数 入力規則のリストを、追加・削除に自動対応で作成一覧リストを使用して、「入力規則」の「リスト」を作…

ここで、じっくり勉強して下さい。

エクセル練習問題解答

では解答です。

問題1
=MID(A1,SEQUENCE(1,LEN(A1)),1)

エクセル Excel 練習問題 スピル

SEQUENCEを実際の数値に置き換えると、
=MID(A1,{1,2,3,4},1)
配列なので、スピルします。
MID(A1,1,1) , MID(A1,2,1) , MID(A1,3,1) , MID(A1,4,1)
これで、4列に出力されます。
SEQUENCEの引数にLEN(A1)を指定しているので、文字数に応じて出力列が変更される仕組みになります。

問題2
=MID(A1:A3,SEQUENCE(1,MAX(LEN(A1:A3))),1)

エクセル Excel 練習問題 スピル

問題1をそのまま使って、
=MID(A1:A3,SEQUENCE(1,LEN(A1:A3)),1)
このように書いてしまいますが、これでは正しく出力されません。

エクセル Excel 練習問題 スピル

縦だけスピルして横にスピルしません。
これは、横の配列の要素数が行ごとに違う為にこのようになってしまいます。
SEQUENCEを実際の数値に置き換えると、
=MID(A1,{1,2,3,4},1)
=MID(A2,{1,2,3},1)
=MID(A3,{1,2,3,4,5},1)

そこで、横の配列数をA1:A3の最大文字数にします。
SEQUENCE(1,LEN(A1:A3))

SEQUENCE(1,MAX(LEN(A1:A3)))
つまり、3行とも、
=MID(A1,{1,2,3,4,5},1)
=MID(A2,{1,2,3,4,5},1)
=MID(A3,{1,2,3,4,5},1)
配列でスピルしますので、
MID(A1,1,1) , MID(A1,2,1) , MID(A1,2,1) , MID(A1,4,1) , MID(A1,5,1)
MID(A2,1,1) , MID(A2,2,1) , MID(A2,2,1) , MID(A2,4,1) , MID(A2,5,1)
MID(A3,1,1) , MID(A3,2,1) , MID(A3,2,1) , MID(A3,4,1) , MID(A3,5,1)
これで、3行5列に出力されます。

※MID関数は、文字列数より大きい数字を指定してもエラーにならずに空白を返してくれます。



同じテーマ「エクセル練習問題解答」の記事

百万単位で表示(百万未満は小数表示、小数位置も合わせる)回答
空白以外のセルの個数(計算結果が空白を除く)解答
指定行数おきに指定行数ずつ色を変更する解答
複数系列の積み上げ棒グラフ解答
億や万の表記を数値化する解答
URLからファイル名を取得(一番右の指定文字以降を抽出)解答
スピルを使って日付の一覧を出力解答
スピルを使って文字列を1セルずつに分解解答
エクセル試験1:曜日別の平均客単価解答
エクセル試験2:所得税の計算解答
エクセル試験3:月間の所定労働時間解答


新着記事NEW ・・・新着記事一覧を見る

付録:AI×VBA実践リソース集|生成AI活用研究(2025-05-25)
おわりに:AI×VBAはあなたの未来を変える強力な武器|生成AI活用研究(2025-05-25)
第7章:さらなる高みへ!AI×VBA応用テクニックと未来への備え|生成AI活用研究(2025-05-24)
第6章:AIとVBAを学び続ける!あなたの「超効率化」を止めないヒント|生成AI活用研究(2025-05-22)
第5章:AI×VBAでつまづかない!トラブルシューティングとAIとの付き合い方 |生成AI活用研究(2025-05-21)
第4章:【事例で学ぶ】AIとVBAでExcel作業を劇的に効率化する! |生成AI活用研究(2025-05-20)
第3章:AIを「自分だけのVBA先生」にする!質問・相談の超実践テクニック|生成AI活用研究(2025-05-19)
第2章 VBAって怖くない!Excelを「言葉で動かす」(超入門)|生成AI活用研究(2025-05-18)
第1章:AIって一体何?あなたのExcel作業をどう変える?(AI超基本)|生成AI活用研究(2025-05-18)
AI時代のExcel革命:AI×VBAで“書かない自動化”超入門|生成AI活用研究(2025-05-17)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.繰り返し処理(For Next)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
5.ひらがな⇔カタカナの変換|エクセル基本操作
6.RangeとCellsの使い方|VBA入門
7.メッセージボックス(MsgBox関数)|VBA入門
8.セルのクリア(Clear,ClearContents)|VBA入門
9.FILTER関数(範囲をフィルター処理)|エクセル入門
10.条件分岐(Select Case)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ