- ベストアンサー
Excelの計算式で
例えば「12345」という数字があります。 この数字は、毎回変更されます「4456」だったり「120050」だったり。 この数字を後ろ側から1文字ずつ1つのセルに表示させたいと思います。 「12345」なら右側のセルに「5」 その左側が「4」 その左側が「3」という感じです。 このように、桁数が毎回異なる数値を右側から1セルずつ表示するにはどのような関数が理想的でしょうか? お願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
分割する関数には「LEFT」、「MID」、「RIGHT」などがありますが MID関数を使用した方法が一番良いかと思います。 数式はA1セルに値が入力されている場合、以下のようになります。 「=MID($A1,LEN($A$3)-COLUMN()+COLUMN($B1),1)」 これを右にコピーしていけば分割できます。 より詳細な解説は参考URLをご覧になってください。
その他の回答 (5)
- mu2011
- ベストアンサー率38% (1910/4994)
仮に入力セルがA1とし、B1:G1に設定するとします。 B1に=(MID(TEXT($A1,"000000"),COLUMN()-1,1))*1を設定して、G1までコピーして下さい。
- hirorin00
- ベストアンサー率50% (446/884)
では 「=IF(LEN($A1)<8-COLUMN(),"",LEFT(RIGHT($A1,8-COLUMN()),1))」 これでいかがでしょう。
- hirorin00
- ベストアンサー率50% (446/884)
何度もすみません。 2番の場合「=IF(LEN($A1)<COLUMN()-1,"",MID($A1,LEN($A1)-COLUMN()+2,1))」の方がきれいに表示されます。
- hirorin00
- ベストアンサー率50% (446/884)
前回の回答では 12345 1 2 3 4 5 と表示されます。 それとも 12345 5 4 3 2 1 をお望みでしょうか? そうでしたら前回の「=MID($A1,COLUMN()-1,1)」を「=MID($A1,LEN($A1)-COLUMN()+2,1)」に変更して再度同じことをやってみてください。
- hirorin00
- ベストアンサー率50% (446/884)
はじめまして A列にターゲットとなる数字が入っていると仮定して… 1、B1には「=MID($A1,COLUMN()-1,1)」を入れます。 2、B1セルを選択し、右下のバツ印にカーソルを合わせてクリックしたまま任意のセルまで横にドラックし、クリックを放します。 3、横長にセルが選択されているはずですので、そこで改めて、右下のバツ印にカーソルを合わせてクリックしたまま、今度は任意のセルまで下にドラックし、クリックを放します。 たぶんこれで行けると思うのですが… 的外れでしたらごめんなさい。
補足
「12345」はあくまでも「12345」で表示したいのですが セルの個数を6桁までと決めて、一番右側にまず「5」と表示し、そこから左に向かってにオートフィルをするほうが理想的です。 説明不足でごめんなさい