2013年05月16日
VBA:通所介護事業所(デイサービス)の事務改善(9)
介護事業所(デイサービス)で作られる、介護予防実績報告書の事務改善について書いています。
少し間が空きましたが、前回からの続きで、今日は「印刷処理」を考えてみたいと思います。
この処理を組み込めば、本当に5分で終わってしまいます。
3日の仕事が5分で終わる!恐るべき時短です。
それでは、処理の説明をします。
対象データがある間、項目編集、印刷の繰り返し処理をします。
①対象データを8行目から参照する。(変数rを使う)
②氏名(d列)が空白になる迄繰り返す。・・・空白なら終了。
③項目の編集処理をする。・・・前回作ったサブプロシジャーへ(変数rを指定する)
④印刷をする。(今回はプレビューで対応)
④編集処理で対象データがない時、印刷処理をスルーする。
プログラムはこんな感じでしょうか。
Sub 印刷()
Application.ScreenUpdating = False
Err = 0 '実績データない時の判定に使う
r = 8 '開始行
With Worksheets("対象者名簿")
Do Until .Range("d" & r).Value = ""
Call 印刷編集(r)
If Err = 0 Then
Worksheets("実績報告書").Select
ActiveWindow.SelectedSheets.PrintPreview
' ActiveWindow.SelectedSheets.PrintOut
End If
r = r + 1
Loop
End With
Sheets("対象者名簿").Select
Application.ScreenUpdating = True
End Sub
項目編集のプロシジャーは前回を参考にして下さい。
この印刷処理はボタンを作り、マクロの登録で印刷を選択します。

それではテストしてみましょう。
ボタンをクリックして実行してみましょう。
・
・
・
連続で印刷(プレビュー)されました。
これで、90%完成ですね。
作っていく段階で、「印刷する対象者を選択したい」という要望がでてきました。
この要望にも応えていきたいと思います。
では
少し間が空きましたが、前回からの続きで、今日は「印刷処理」を考えてみたいと思います。
この処理を組み込めば、本当に5分で終わってしまいます。
3日の仕事が5分で終わる!恐るべき時短です。
それでは、処理の説明をします。
対象データがある間、項目編集、印刷の繰り返し処理をします。
①対象データを8行目から参照する。(変数rを使う)
②氏名(d列)が空白になる迄繰り返す。・・・空白なら終了。
③項目の編集処理をする。・・・前回作ったサブプロシジャーへ(変数rを指定する)
④印刷をする。(今回はプレビューで対応)
④編集処理で対象データがない時、印刷処理をスルーする。
プログラムはこんな感じでしょうか。
Sub 印刷()
Application.ScreenUpdating = False
Err = 0 '実績データない時の判定に使う
r = 8 '開始行
With Worksheets("対象者名簿")
Do Until .Range("d" & r).Value = ""
Call 印刷編集(r)
If Err = 0 Then
Worksheets("実績報告書").Select
ActiveWindow.SelectedSheets.PrintPreview
' ActiveWindow.SelectedSheets.PrintOut
End If
r = r + 1
Loop
End With
Sheets("対象者名簿").Select
Application.ScreenUpdating = True
End Sub
項目編集のプロシジャーは前回を参考にして下さい。
この印刷処理はボタンを作り、マクロの登録で印刷を選択します。

それではテストしてみましょう。
ボタンをクリックして実行してみましょう。

・
・
・
連続で印刷(プレビュー)されました。
これで、90%完成ですね。
作っていく段階で、「印刷する対象者を選択したい」という要望がでてきました。
この要望にも応えていきたいと思います。
では

Posted by ミール at 16:48│Comments(0)
│VBA