プロが教える店舗&オフィスのセキュリティ対策術

EXCELを使って購買伝票を作成しようと思うのですが
伝票番号を自動採番できればと考えています
ファイルを開いた時、または印刷をした後に伝票番号を自動で+1する様な
事は出来ないでしょうか?
どうぞよろしくお願いいたします

A 回答 (2件)

「印刷をした後」ですか…。


Alt+F11でVBAの画面を開き、ThisWorkbookをダブルクリックして、

Private Sub Workbook_BeforePrint(Cancel As Boolean)
  CountUp
End Sub

Private Sub Workbook_Open()
  CountUp
End Sub

Private Sub CountUp()
  With Worksheets("Sheet1")
    .Range("A1").Value = .Range("A1").Value + 1
  End With

End Sub

と書けば、ブックを開くたび、あるいは印刷をする「前」にSheet1のA1を自動的にカウントアップします。が、プレビューをしただけでも採番されてしまうので、多分これではだめかな…。
    • good
    • 0
この回答へのお礼

ありがとうございます
早速試してみました
やはりプレビューした時にカウントされてしまうのはまずいので
ファイルを開いた時のみカウントされるようにしました
制約が着いてしまいますがちょっとこれで運用してみます

お礼日時:2006/11/22 10:55

前回の値を記憶しておきそれに1を加える必要がありますから、どう転んでもマクロが必要な気がします。



マクロを使って、完成時に伝票番号を保存し、次回新規伝票作成ボタンを押したら前回の番号を引っ張ってきて1を加えるという感じでしょうか。
    • good
    • 0
この回答へのお礼

ありがとうございます
やっぱりマクロしか方法はありませんか
頑張ってやってみます!

お礼日時:2006/11/22 10:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!