2023年8月2日【ID:0】
メンバー限定
【Excel】文字列を右詰めで1つ1つの枠に割り当てる
書類のフォーマットで、1つ1つの枠に右詰めで文字を入力する必要があることがあります。
今回は、指定のセルに入力した文字を1つ1つの枠に右詰めで表示させる数式の作成方法について解説していきます。

実現方法
実現方法は、以下の流れを数式で表現します。
手順1:枠の数と文字の数を揃える
手順2:先頭から1文字ずつ枠に表示させる
手順1:枠の数と文字の数を揃える
まずは、手順1から確認していきます。
以下の画像の場合、枠の数は5つになります。
そのため、セルI2に入力した値が、5文字未満の場合は、文字の先頭にスペースを加えて5文字にしていきます。

先頭にスペースを加えて5文字にするためには、何文字のスペースが必要なのかを確認する必要があります。
そのため、セルI2に入力されている現時点の文字数をLEN関数を活用して取得します。
=LEN(文字列)
// 指定した文字列の文字数を返す(半角、全角に関わらず1文字としてカウント)
LEN関数を活用した例が以下になります。
=LEN(I2)

次に、上記で求めた値を5から引くことで、スペースが必要な数を求めることができます。
=5-LEN(I2)

上記で求めた数分だけスペースを先頭に加えていきます。
指定の数の文字を生成するには、REPT関数が活用できます。
=REPT(文字列, 繰り返し回数)
// 指定の文字列を指定の回数だけ繰り返して表示
実際に、LEN関数とREPT関数を組み合わせて、半角スペースを先頭に加えた例は以下になります。
※以下の画像では、半角スペースが分かりやすいように「_」で表現しています。
=REPT(" ",5-LEN(I2))&I2

手順2:先頭から1文字ずつ枠に表示させる
後は、「手順2:先頭から1文字ずつ枠に表示させる」を行います。
手順2は、上記で取得できた文字列から1文字ずつを枠に表示させるだけです。
続きはIT予備メンバー限定です。
メンバー限定コンテンツになります。

IT予備メンバーページと連携することで内容を確認することができます。
メンバーとは
すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。
ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます