- ベストアンサー
EXELでひとつのセルの値を任意の複数セルに振り分けたい
投稿させて頂きます。 もし、なにかわかることや参考関数があればお教え願えばと思います。 ある任意のセルA1の数値(12345)を B1~5までのセルに振り分けたいと思います。 実行後のイメージはこんな感じです A1:12345 B1:1 B2:2 B3:3 B4:4 B5:5 ただし、数値のみ入力が前提ですが、たとえば0が入るような場合 A1が1234 だったばあい B5には何も入力せず空にしておきたいのです。 できるだけマクロは使いたくないので誰か、設定と関数などで出来るよ というような方がおられましたらご教授願えませんか? よろしくお願いいたします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
B1=MIDB($A$1,1,1) B2=MIDB($A$1,2,1) B3=MIDB($A$1,3,1) B4=MIDB($A$1,4,1) B5=MIDB($A$1,5,1) $A$1 :A1 を指定 次が何文字目かを指定 最後が指定した文字から何文字かを指定です。 この数式だと、半角入力で有効です。 全角だと2文字単位になると思います。
その他の回答 (5)
- jindon
- ベストアンサー率43% (50/116)
お騒がせしております。 No.1 + No.3の訂正です。 B1セルからですね。 最後の 0 表示なし B1: =IF(OR(ROW()>LEN(A$1),AND(ROW()=LEN(A$1),RIGHT(A$1,1)="0")),"",MID(A$1,ROW(),1)*1) 0 表示なし B1: =IF(OR(ROW()>LEN(A$1),MID(A$1,ROW(),1)="0"),"",MID(A$1,ROW(),1)*1) でフィルダウンです。
- imogasi
- ベストアンサー率27% (4737/17069)
(1)むしろ10桁定桁で、12345を縦に△△△△△12345にする方法を記します。 B1セルに=MID(REPT(" ",10-LEN($A$1))&$A$1,ROW(B1),1)をいれてB10まで+ハンドルを引っ張る。 (2)上詰ならC1セルに、=MID($A$1,ROW(C1),1)を 入れてC10まで+ハンドルを引っ張る。 (3)(1)式に横に並べるならB1セルに =MID(REPT(" ",10-LEN($A$1))&$A$1,COLUMN(B1)-1,1) といれ、K1セルまで+ハンドルを引っ張る。 (4)横ならB1に=MID($A$1,COLUMN(B1)-1,1)と入れて F1まで+ハンドルを引っ張る。
- tinu 2000(@tinu2000)
- ベストアンサー率40% (147/366)
こんばんは。 B1に、=MID(TEXT($A$1,REPT("0",LEN($A$1))),1,1) B2に、=MID(TEXT($A$1,REPT("0",LEN($A$1))),2,1) B3に、=MID(TEXT($A$1,REPT("0",LEN($A$1))),3,1) B4に、=MID(TEXT($A$1,REPT("0",LEN($A$1))),4,1) B5に、=MID(TEXT($A$1,REPT("0",LEN($A$1))),5,1) で、出来ました。
- jindon
- ベストアンサー率43% (50/116)
No.1の訂正です。 もちろん、両数式共に A2 に挿入です。 正↓ A2: IF(OR(ROW()-1>LEN(A$1),AND(ROW()-1=LEN(A$1),RIGHT(A$1,1)="0")),"",MID(A$1,ROW()-1,1)*1) 又は、 A2: IF(OR(ROW()-1>LEN(A$1),MID(A$1,ROW()-1,1)="0"),"",MID(A$1,ROW()-1,1)*1)
- jindon
- ベストアンサー率43% (50/116)
最後の 0 だけ表示なしの場合、 B1: =IF(OR(ROW()-1>LEN(A$1),AND(ROW()-1=LEN(A$1),RIGHT(A$1,1)="0")),"",MID(A$1,ROW()-1,1)*1) とにかく 0 を表示しない場合、 B1: =IF(OR(ROW()-1>LEN(A$1),MID(A$1,ROW()-1,1)="0"),"",MID(A$1,ROW()-1,1)*1) として下方へコピー+ペースト
お礼
たいへん参考になり助かりました。 EXEL関数は慣れていないのでこれからも少しづつ覚えていこうと思います ありがとうございました! Tsuka0614