数字や日付を一桁ずつ取り出してセルに表示する数式を紹介します。

取引先や銀行に提出する書類の中には、数字や日付を記入するための欄がマス目になっていて、1マスに1桁ずつ数字を記入しないといけないことがあるんです。



すでに罫線が引いてある用紙に印刷する場合、
ピッタリ合わせるための文字サイズや間隔を探す必要がありますね。



しかも記入する枠の数だけです



今回は、そういった枠にぴったり合わせるために
一文字ずつを取り出し、それぞれをセルにはめていく方法を紹介します。



記入する用紙のデータがあればすぐに活用できますね。
数字や日付を1桁ずつ取り出す数式
数字
例えば、「123,456,789」を1桁ずつ取り出します。
一の位:9
十の位:8
百の位:7
千の位:6 ・・・
エクセルではこんな感じです。


セル「B3」(億の位)に入れる数式は次のようになります。
数式①
=IF(LEN($A3)>=B$1,MID($A3,LEN($A3)-B$1+1,1),””)
他のセルは「B3」をコピーします。
数式②
=IF(LEN($A3)>=B$1,RIGHT(ROUNDDOWN($A6/10^(B$1-1),0),1),””)
日付
例えば、「2021年2月10日」の「年月日」を取り出します。
年の千の位:2、百の位:0、十の位:2、一の位:1
月の十の位:0、一の位:2
日の十の位:1、一の位:0
日付がシリアル値の場合
エクセルではこんな感じです。


それぞれのセルに入れる数式は次のようになります。
B3:=MID(YEAR($A3),B$1,1)
F3:=IF(MONTH($A3)>=10,LEFT(MONTH($A3),1),0)
G3:=RIGHT(MONTH($A3),1)
H3:=IF(DAY($A3)>=10,LEFT(DAY($A3),1),0)
I3:=RIGHT(DAY($A3),1)
C3~E3は、B3をコピーします。
日付がyyyymmddの場合
エクセルではこんな感じです。


セル「B3」に入れる数式は次のようになります。
=MID($A3,B$1,1)
他のセルは「B3」をコピーします。
yyyymmdd形式だとすべて同じ数式で対応できます。



こちらの方が管理がしやすいので、シリアル値の場合もyyyymmdd形式に変えてから、1桁ずつ取り出してみましょう。
シリアル値をyyyymmdd形式に変えて取り出す数式


セル「B3」に入れる数式は次のようになります。
=MID(TEXT($A3,”yyyymmdd”),B$1,1)
他のセルは「B3」をコピーします。
コメント