Excel 文字列の前後をスペースやゼロで埋める方法 ホームページ制作 | 墨田区

Excel 文字列の前後をスペースやゼロで埋める方法

LINEで送る
Pocket

Excelで文字列の前後をスペースやゼロで埋める方法をご紹介します。
Excel文字列の前後をスペースやゼロで埋める方法

固定長データのファイルを作成する場合、文字列の後ろをスペースで埋めたいなどの要件がありますね。ちなみに固定長データとは、桁数でデータ項目を判断する電文データのことです。1レコードの1~8桁目を売上日(20160501)、9~23桁目を伝票番号(Z1234)、24~43桁目を商品コード(X01234)、44~50桁目を金額(9999)など、決まった場所にデータを配置する方法です。伝票番号と商品コードは後ろスペース埋め、金額は前ゼロ埋めなどと指定され、固定の桁数に合わせることがほとんどですね。

例:
20160501Z1234          X01234              0009999

今ではあまり採用されていないかもしれませんが、レガシーシステムでは固定長データの電文でやり取りされているものがほとんではないでしょうか。

実際はデータベースからレコードを取得して、各項目を加工しながらファイルを作成するようプログラミングするのですが、テストデータを作るのはやっぱり Excel の方が楽です。またプログラミング知識のない方でも、システムに関わる方であればサンプルデータを作るときに Excel で作れれば便利ですよね。

今回は Excelで文字列のスペース埋め、数値のゼロ埋めする方法 をご紹介します。




【PR】マジか?!「アレ」してるLINEスタンプっていったい・・・


文字列の右側にスペース埋め

伝票番号=Z1234に対して右側にスペースを埋め、15バイトにするためには、2つの Excel 関数を利用します。
・REPT(文字列,繰り返し回数)
・LEFTB(文字列, バイト数)

REPT関数は引数で指定した「繰り返し回数」分、繰り返した文字列を表示してくれます。
LEFTB関数は引数で指定した「左から取り出したいバイト数」分、値を表示してくれます。

使い方はこんな感じです。

=LEFTB(A1&REPT(" ",15),15)
※A1部分は指定のセルに書き換えてください。

A1に”X1234″という値があったと想定します。上記の関数の組み合わせは、REPT関数を使ってスペースを15バイト作ります。A1に値がなければスペース15バイトになりますね。A1と連結し、そこから LEFTB関数を使って左から15バイト取得するという意味になります。

下図はサンプルです。B列にはバイト数を求める LENB 関数を利用しています。
Excel文字列の右側にスペース埋め関数

Excel文字列の右側にスペース埋め 長さ


数値の左側にゼロ埋め

金額=9999に対して左側にゼロを埋め、7バイトにするためには、同じく 2つの Excel 関数を利用します。
・REPT(文字列,繰り返し回数)
・RIGHTB(文字列, バイト数)

RIGHTB関数は引数で指定した「右から取り出したいバイト数」分、値を表示してくれます。

使い方はこんな感じです。

=RIGHTB(REPT(0,7)&A1,7)
※A1部分は指定のセルに書き換えてください。

A1に 9999 という値があったと想定します。上記の関数の組み合わせは、REPT関数を使ってゼロを7バイト作ります。A1に値がなければゼロが7バイトになります。A1と連結し、そこから RIGHTB関数を使って右からから7バイト取得するという意味になります。

下図はサンプルです。B列にはバイト数を求める LENB 関数を利用しています。
Excel数値の左側にゼロ埋め

Excel数値の左側にゼロ埋め 長さ


まとめ

いかがでしたか?固定長データの作り方、伝わりましたでしょうか?
ちなみに今回の例を全部つなげるとこうなります。
Excel文字列の前後をスペースやゼロで埋めるサンプル関数

=A2&LEFTB(B2&REPT(" ",15),15)&LEFTB(C2&REPT(" ",20),20)&RIGHTB(REPT(0,7)&D2,7)

皆さんの固定長データサンプル作りに役立てばうれしいですね。


おつかれさまでした。

LINEで送る
Pocket

この記事がお役に立ちましたら シェア をお願いいたします。

Office / VBAの勉強が思うように進まないときは!

Office / VBAの勉強が思うように進まないのであれば、プロに直接質問ができる プログラミングスクール を検討してみてはいかがでしょうか?プログラミングスクールに申し込めば、短期間で一定のスキルを身に着けることができます!

Office / VBAコースあり!未経験者にウケてる KENスクール パソコンスクール・パソコン教室 【KENスクール】個別指導のWeb-DTP・OA・IT PCスクール

理解度や学習ペースに合わせて、一人ひとりが納得して前進できる授業を提供してくれるのが特徴です。特に課題製作は現場さながらで、実務に即したものとなっていますので短期でのスキルアップが望めます。自宅学習のサポートも充実していて、授業内容をいつでもビデオで振り返ることができるのもうれしいですね。好きな時間に好きな場所で、無理なくスケジューリングできるので、仕事の忙しい方でも柔軟に学ぶことができますよ。

更にさらに、なんと 就職サポート をしてくれるというのですから驚きです!!

履歴書の書き方から面接指導、求人の紹介など、具体的な就職先まで提案してくれるんです!私も「もっと早く出会いたかったなぁー、こんなスクール」・・・って思っちゃいました^^

東京・神奈川・愛知・大阪を営業エリアとされています。
まずは気軽に 無料体験予約 に申し込んでみるのもアリですよ。


コメントを残す

お名前 (必須)
メールアドレス
(アドレスは公開されません)

コメント(必須)

Trackback URL