- ベストアンサー
Excelで数値を右詰めでセルに一つずつ分割したい
Excel2007です。 最大10桁の数値をセル毎に分割したい。 その際、1の位を一番右にして、右詰めで表示したい。 関数でする方法は、ありますか? 左詰めなら =MID($A1,COLUMN(A1),1)でできることは 調べてあります
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
■右詰めが入力位置のことなら 10桁未満の時に前方空白表示なら(123456789→_,1,2,3,4,5,6,7,8,9) =TRIM(MID(TEXT($A1,"??????????"),COLUMN(A1),1)) 10桁未満の時に前方0表示なら(123456789→0,1,2,3,4,5,6,7,8,9) =MID(TEXT($A1,"0000000000"),COLUMN(A1),1)
その他の回答 (4)
- hallo-2007
- ベストアンサー率41% (888/2115)
No2です。質問を勘違いしていました。 >左詰めなら =MID($A1,COLUMN(A1),1)でできることは 表示を セルの右詰めで表示したいだけですか? 表示を右詰めにするとか 結果を数値にするとかでは =MID($A1,COLUMN(A1),1)*1 エラー処理を入れて =IF(LEN($A1)<COLUMN(A1),"",MID($A1,COLUMN(A1),1)*1) の事だったでしょうか。
お礼
回答ありがとうございます。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 色々考え方はあるかと思いますが・・・ 一例です。 ごくごく単純にやってみました。 データはA列の1行目からあるとします。 B1セルに =IF(LEN($A1)>=11-COLUMN(A1),LEFT(RIGHT($A1,11-COLUMN(A1)),1),"") として列方向・行方向にオートフィルではどうでしょうか?m(_ _)m
お礼
回答ありがとうございます。 望み通りできました。 今後ともよろしく
- hallo-2007
- ベストアンサー率41% (888/2115)
10文字固定ということであれば =MID($A1,11-COLUMN(A1),1) 桁数が変化するのであれば =MID($A1,LEN($A1)-COLUMN(A1)+1,1) エラー処理を考えると =IF(ISERROR(MID($A6,LEN($A6)-COLUMN(A1)+1,1)),"",MID($A6,LEN($A6)-COLUMN(A1)+1,1)) 或いは =IF(LEN($A1)>COLUMN(A1),MID($A1,LEN($A1)-COLUMN(A1)+1,1),"") では如何でしょうか。
お礼
早速の回答ありがとうございます。 前方の空白非表示です。 前段の回答でうまく表示されました。 今後ともよろしく