エクセル・<コピペのみ>数字や日付を1桁ずつ取り出す

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

取引先や銀行に提出する書類の中には、数字や日付を記入するための欄がマス目になっていて、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),””)

A3の数字の桁数が、B2以下の場合
A3の、左から{(A3の数字の桁数)ー(B2)+1}文字目

他のセルは「B3」をコピーします。

数式②

=IF(LEN($A3)>=B$1,RIGHT(ROUNDDOWN($A6/10^(B$1-1),0),1),””)

A3の数字の桁数が、B2以下の場合
取り出したい桁が「一の位」になるように10のべき乗で割り
小数点以下を切り捨て
右から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をコピーします。

年のA3桁目
月が10以上の場合、一桁目。9以下の場合、0
日が10以上の場合、一桁目。9以下の場合、0

日付がyyyymmddの場合

エクセルではこんな感じです。

セル「B3」に入れる数式は次のようになります。

=MID($A3,B$1,1)

A3の、左からB1文字目

他のセルは「B3」をコピーします。

yyyymmdd形式だとすべて同じ数式で対応できます

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

シリアル値をyyyymmdd形式に変えて取り出す数式

セル「B3」に入れる数式は次のようになります。

=MID(TEXT($A3,”yyyymmdd”),B$1,1)

TEXT関数で、A3のシリアル値をyyyymmdd形式にしています。

A3の、左からB1文字目

他のセルは「B3」をコピーします。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!

この記事を書いた人

子育てに奮闘しながらも、再びガッツリ走り込める日を夢見るフルタイム会社員。

コメント

コメントする

CAPTCHA


目次
閉じる