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の記事が参考になります。

 

fornextirekoeyecatch エクセルVBA!For~Nextの入れ子ループを最速に理解する vbafontsyseyecatcha 文字の書式の設定方法 Fontプロパティで装飾操作ができる vbawithstateeyecatch With~End Withの使い方。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コードの参考にしていただける記事です。

VBAFormateyecatch Format関数を書式設定のテッパン関数にする!実務での書式と重要5例

 

和暦日付ナンバリング

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

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

 

部門別ナンバリング

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

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の独習には動画学習という方法もあります。 目と耳両方を使って学習することでさらに勉強効率を上げることもできます。

Udemy1eyecatch エクセルVBA初級者がUdemyで動画学習する講座おすすめ5選と無料講座の上手な使い方。

 

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

vbastudyeyecatch002 エクセルVBAを独学で習得する!ために大切な7つのポイントを解説します

 

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

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