Excelで書類のナンバリング刻印は瞬殺作業になる。紙ベースのユーザー必見

vbanumberingeyecatch

書類整理時の必要作業 ナンバリング刻印。
紙ベースの場合はスタンプで順に刻印していく作業が定番です。
時間のかかる単純作業この上ありません。
こんな作業は、エクセルのVBAを使って瞬殺してしまいましょう。

こんにちは じゅんぱ店長 (@junpa33) です。

今回の簡単プログラムは、エクセルを利用して書類をナンバリングする方法です。

書類のナンバリングと言えば、定番の「ナンバリングスタンプ」でしょ!

ねこ氏

うささん

今も変わらず、事務員さんがカシャン、カシャンと刻印していますよ。

この事務作業って何気に地味に面倒くさいものです。時間もかかるし。

今回はここを改善してみましょう。

Excelで書類にナンバリング刻印

numbering01

事務用品でナンバリングスタンプと言うと、数字(自然数)でカウントアップで刻印していく、5・6桁のスタンプだと思います。

単なる番号付けのスタンプです。

ところが、これをExcelで作ると、

いわゆる「好き勝手にナンバリング」が可能になるわけです。

ジャンル別ナンバリング」や「地域別ナンバリング」や「年月日別」など、好き勝手です。

ただし、誰でもが使えるわけではありません!

エクセルVBAの入門レベルの知識は必要です。

悩める君

今回、日付ごとのナンバリングのエクセルVBAコードを作成しましたので、作り方を紹介します。

注意

これから行うExcelナンバリングは、刻印するそれぞれの用紙が同じサイズ・同じ厚さで、コピー用紙と同質のものであることが前提です。

不均一なものだとプリンターが損傷することがあるかもしれません。

今回の日付ナンバリングはこれです

書類用紙の右肩に1日1枚で刻印を行っています。

vbanumbering001

エクセルのシート設定

エクセルシートの印刷設定を行います。

刻印する場所としては、

エクセルシート上の「右ヘッダー」か「印刷時のページ上の一番右上のセル」のどちらかになります。

今回の設定では、「印刷時のページ上の一番右上のセル」を使用しています。

シートの設定する理由は、

  •   用紙サイズの設定
  •   上と右余白の設定(右肩に刻印する場合)

を行うためです。

これを行わないと、刻印するセルの位置が確定できないからです。

日付ナンバリングの日数を調べる

このVBAプログラムを使ってナンバリングするには、何回(何日分)の印刷が必要かを計算します。

これは、よくあるエクセルの日付計算でOKです。

例えば、

令和4年5月1日から令和5年3月31日までは「334日+1日」とかを計算します。

日付ナンバリングのエクセルVBAコード

令和4年4月1日から令和4年5月31日までの日付ナンバリングの実例です。

コード
Sub 日付ナンバリング()
Dim n As Long
Dim st As Date
    For n = 0 To 60
        st = "2022/04/01"
        Range("I1") = DateAdd("d", n, st)
        With Range("I1")
            .Font.Size = 25
            .Font.Bold = True
            .NumberFormatLocal = "m" & "/" & "d" & "(aaa)"
        End With
        ActiveSheet.PrintOut from:=1, To:=1
    Next n
End Sub

  •  nはカウンター変数で印刷する日数分変化していきます。
  •  stはいつの日時から印刷開始するかを変数化しています。日付を代入します。
  •  DateAdd関数はスタートの日付からn日カウントした日を示します。
  • With End Withの間で、文字表示や日付表示を指定します。
  • そして、シートを1ページのみ印刷します。
  • これを日数分繰り返します。

こちらのエクセルVBAの記事が参考になります。

いろいろ応用してみる

numbering02

VBAコードを一部修正して、色々なスタイルで表示させることが出来ます。

普通のナンバリング

普通の5桁のナンバリングで刻印します。

1から1225までの設定ですが、「1225」の数値は任意に変更してください。

vbanumbering004

コード
Sub ナンバリング()
Dim n As Long
    For n = 1 To 1225
        With Range("J1")
            .Font.Size = 18
            .Font.Bold = True
            .NumberFormatLocal = "@"
            .Value = Format(n, "00000")
        End With
        ActiveSheet.PrintOut from:=1, To:=1
    Next n
End Sub

VBAコード参考記事
ここの説明で出てくるVBAコードの参考にしていただける記事です。

和暦日付ナンバリング

日付表示を変更しています。

vbanumbering002

コード
Sub 和暦日付ナンバリング()
Dim n As Long
Dim st As Date
    For n = 0 To 60
        st = "2022/04/01"
        Range("G1") = DateAdd("d", n, st)
        With Range("G1")
            .Font.Size = 18
            .Font.Bold = True
            .NumberFormatLocal = "ggge年m月dd日(aaaa)"
        End With
        ActiveSheet.PrintOut from:=1, To:=1
    Next n
End Sub

MEMO

セルの表示形式についてはこちらを参考にしてください。

vbacellssyoshikieyecatch 「表示形式」をVBAコード的に最速理解する

部門別ナンバリング

カウントナンバーの前に文字を付加することもできます。

vbanumbering003

コード
Sub 部門別ナンバリング()
Dim n As Long
Dim st As String
    For n = 1 To 75
        st = "令和4年 顧客NO. "
        Range("G1") = st & n
        With Range("G1")
            .Font.Size = 18
            .Font.Bold = True
        End With
        ActiveSheet.PrintOut from:=1, To:=1
    Next n
End Sub

エクセルでナンバリング刻印のまとめ

このExcelナンバリングを使うためには、エクセルが使える環境で、

ナンバリングをする書類のサイズや紙厚が同じでプリンターに通る必要があります。

もし、この方法が使える環境で有れば、

エクセルVBAコードの一部を変更するだけで、無限のバリエーションのナンバリングを刻印することが出来るようになります。

この様に、エクセルVBAの知識を少しでも持っていれば、

少しの思考の切り替えで、時間のかかっていた作業を、超楽に熟してしまうことも出来てしまいます。

エクセルVBAの独習には動画学習という方法もあります。 目と耳両方を使って学習することでさらに勉強効率を上げることもできます。

エクセルVBAを独習するのに参考書は欠かせません。 参考書選びは自分に合った「相棒」にできるものを選んでいきたいです。

今回の記事はここまでです。   最後までご覧いただき有難うございました。

<記事内容についての告知>VBAコードの記述記事においては、その記述には細心の注意をしたつもりですが、掲載のVBAコードは動作を保証するものではりません。 あくまでVBAの情報の一例として掲載しています。 掲載のVBAコードのご使用は、自己責任でご判断ください。 万一データ破損等の損害が発生しても当方では責任は負いません。

アンケートでポイ活しよう!!

アンケートに答えれば答えるほど ”使える” ポイントがたまります。

NTTコム サーチ

af_banner01

Dstyle web

dstyleweb_logo
dstyle_320x50-min