- ベストアンサー
セルに入力されている数字列を 一文字ずつセルにふりわけたい
たびたびよろしくお願いします。 ひとつのセルに6~7桁の数字が入力されてます。 (数字と数字の間にはスペースはありません) A 7桁の場合はこの数字を一文字ずつ 別のセルひとつひとつに 振り分けたいのですが 可能でしょうか? 例 「9654321」→ 「9」「6」「5」「4」「3」「2」「1」 B 6桁の場合は頭にゼロを入力して 同様に別のセルひとつひとつに 振り分けたいのですが 可能でしょうか? 例 「654321」→ 「0」「6」「5」「4」「3」「2」「1」
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。maruru01です。 別解です。 A1に数値があって、B1:H1に入れる場合、 B1に、 =MID(TEXT($A1,"0000000"),COLUMN(A1),1) と入力して、H1までコピーします。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)7桁ばかりなら A1(A列)に数字があるとして B1に=MID($A1,COLUMN(B1)-1,1)をいれて、H1まで式を複写。B1:H1を範囲指定してH1で+ハンドルを出し、下へ引っ張る。 (2)7桁以下が混じっている場合 1列ワーク列(B列とする)に使って、B1に =REPLACE("0000000",8-LEN(A1),LEN(A1),A1) をいれて下方向に複写する。 その後B列に対し(1)を行う。 (2)は(1)の場合を含むので、始めから(2)でやる手もあるが、式が簡単なので(1)を特記します。
お礼
ありがとうございました!^^ 桁数が一定の場合と 桁数がいろいろ混ざっている場合の 二通りの解法、非常に参考になりました。 いろいろさらに応用がききそうですね ガンバって研究したいとおもいます
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
A1に元の値があるとします。 1の位: =mod(A1, 10) 10の位: =mod(int(A1/10), 10) 100の位: =mod(int(A1/100), 10) 以下同様に百万の位までどうぞ。
お礼
早速の回答感謝です。 余りを使うって発想がまず思い浮かばなかったです。 ばっちり解決いたしました ありがとうございます
お礼
ありがとうございました 非常にシンプルで桁数の増減にも すぐに対応できる方法ですね! 助かりました^^