Categories: 教師のEXCEL講座

【教師のEXCEL講座】EXCEL VBA~個人票の印刷方法~

こんにちは。福田泰裕です。

今回は、下の記事のVLOOKUP講座で作成した個人票を、VBAを使って印刷していきます!

個人票を作成はこちらの記事をご覧ください👇

VBAとは、EXCELの操作を自動で行ってくれるプログラミング言語です。
うまく利用すれば、作業効率が大幅にアップします。

今回はこのVBAの印刷機能を使って、個人票を印刷する方法をご紹介します。

最後まで読んでいただけると嬉しいです!

目次

広告

マクロで個人票をすべて印刷する

個人票のEXCELファイルを開き、VBAのエディタを起動させます。

マクロ名は「印刷」として、次のように入力しましょう。

Sub 印刷()

End Sub

そして、👇このセルR1の数字を1つずつ増やしながら印刷すれば良いので、

プログラムはこのようになります。
(※2行目の to の後は、生徒数に変更してください。今回は5人の場合です。)

Sub 印刷()
For i = 1 To 5  '最後は生徒数
  Range("R1") = i
  Worksheets("Sheet1").PrintOut
Next i
End Sub

2行目の「i = 1 to 5」は、iを1から5まで変更しながら繰り返すということです。
3行目でセルR1 に i を代入し、4行目で印刷しています。

あとは、印刷ボタンを作成し、マクロを登録しましょう。

印刷ボタンへの登録方法はこちらの記事をご覧ください👇

ボタンを追加して、マクロ「印刷」を登録すると…👇

これで、いつでも簡単に印刷できるようになりました!

マクロで個人票を欲しい範囲だけ印刷する

しかし、上の方法には致命的な欠点があります。
例えば「2組だけ印刷したい」というときのように、途中だけの印刷ができません!

実際に業務をしていると、途中だけを印刷する機会が多く、この方法だと困ってしまいます。
そのため、何番から何番まで印刷するか設定できるようにしておくと、とても便利です。

個人票を変更していきましょう。
まず、下のように追加します。👇

このセルを変更すれば、印刷したい個人票を選べるようにしたいと思います。
次にエディタを開き、このように変更しましょう。

Sub 印刷()
a = Range("T1")
b = Range("V1")
For i = a To b
    Range("R1") = i
    Worksheets("Sheet1").PrintOut
Next i
End Sub

これで、ボタンにマクロを登録すれば…👇

セルT1とセルV1の数字を変更するだけで、欲しい範囲のみ印刷できるようになります!
こちらの方が実用性があって、とても使いやすいです!

まとめ:VLOOKUP関数とマクロの組み合わせで個人票が作成・印刷できる

いかがでしたでしょうか。

今回のVLOOKUP関数とマクロを組み合わせれば、個人票を作成して印刷までできます。

この組み合わせはとても汎用性が高く、

  • テストの個人票
  • 選択科目の名簿
  • 一括集金の個人票

など、学校業務のあらゆる場面で利用できます。
ぜひマスターして、どんどん効率化していきましょう!

EXCAL VBAは、知れば知るほど作業を自動化できるものです。

最後まで読んでいただき、ありがとうございました。

質問やご意見、ご感想などがあればコメント欄にお願いします👇

福田 泰裕

33歳、2児の父。 山口県の高校教師で、担当は数学と情報。 毎日定時ダッシュするために、働き方改革を実施中。 数学教育・情報教育・教師の働き方・教師のEXCEL講座などを記事にしています!