Excel VBAでセルの書式を整える

・概要

ExcelのVBAを利用して、セルの書式を変更してみます。Excelを使った自動化処理などの際に役に立つと思います。


・Excelで「開発」タブを準備する

メニュータブ「開発」を開き、「Visual Basic」→「標準モジュール」を実行して以下の通りに設定を実施します。

※開発タブがない場合、Excelの「ファイル」→「その他」→「オプション」を開き、以下の通りにチェックを入れて設定します

以下の通り、メニューから「標準モジュール」を選択して準備完了。


・表示形式を変更する

 以下のようにExcelに日付を記述しておきます。

標準モジュール内に、以下を記述します。


#表示形式を指定する
Sub test1()
 Range("A1:A10").NumberFormatLocal = "yyyy年mm月dd日"
End Sub

F5キーを押すとVBAが実行され、以下の通り表記が変わります。

その他、書式指定方法は以下表を参照。

書式指定文字内容
G/標準標準の表示形式。
_(アンダーバー)_(アンダーバー)に続く文字の幅だけ文字間隔を空けることができる。
「”」で囲まれた文字列を表示する。
入力値を文字列としてそのまま表示する。
#小数点のいずれの側でも表示形式の # 記号の数より少ない場合に 0 は表示されない。
0数値の桁数が表示形式の 0 の桁数より少ない場合に、表示形式の桁まで 0 が付加される。
?有効桁以外の 0 にスペースが挿入されるため、列内で小数点の位置が整列される。
. (ピリオド)数値に小数点を表示する。
,(カンマ)数値に桁区切り記号を表示する。
yy年を2桁の数値で表示する。
yyyy年を4桁の数値で表示する。
g元号のアルファベット1文字が表示される。M,T,S,Hが表示できる。
gg元号の1文字が表示される。【昭,平,令】
ggg元号が表示できます。【昭和,平成,令和】
e年数が1桁で表示される。
m月数を表示する。1~12が表示できる。
mm01~12が表示できる。1~9は01~09と0付で表示される。
mmmJan~Dec
mmmmJanuary~December
mmmmmJ~D頭文字が表示される。
d日数を表示する。1~31が表示できる。
dd01~31が表示できる。
dddSun~Sat
ddddSunday~Saturday
aaa日~土
aaaa日曜日~土曜日
h時を表示する。0~23が表示できる。
hh00~23が表示できる。
m分を表示する。0~59が表示できる。
mm00~59が表示できる。
s秒を表示する。0~59が表示できる。
ss00~59が表示できる。
[h]24時を超える時間を表示する。
[m]60分を超える分を表示する。
[s]60秒を超える秒を表示する。

返信を残す

メールアドレスが公開されることはありません。

CAPTCHA