• 締切済み

アクセスで社員番号を自動で振る方法を教えてください。

アクセスで社員番号を自動的に振る方法を教えてください。 アクセスは2003を使用しています。 社員番号の構成は7桁で、「1008001」このような番号が振られています。 頭2桁の「10」は固定です。次の2桁「08」は入社年度によって変わります。2008年4月1日以降2009年3月31日までの入社は「08」、2009年4月1日以降2010年3月31日までの入社は「09」というようになります。最後3桁は連番になります。ただ、「08」から「09」になったときはまた「000」からスタートになります。このような社員番号を入社年月日を入れたら自動的に発番される方法はないでしょうか? どうかご教授お願い致します。

みんなの回答

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

社員番号がテキスト形式なら Sub 入社年月日_AfterUpDate() Dim NO As Integer Dim NOTOP As String NOTOP = "10" & Format(DateAdd("m",-3,[入社年月日]),"yy") '年度内社員数抽出 NO = DCOUNT("テーブル名","社員番号 Like '" & NOTOP & "*'") '年度内最大社員番号抽出 If NO > 0 Then NO = Cint(Right(DMAX("テーブル名","社員番号 Like '" & NOTOP & "*'"),3)) End If '社員番号発行 If NO = 999 Then Goto OVF [社員番号] = NOTOP & Format(NO + 1,"000") End If Exit Sub 'オーバーフロー OVF: NO = MsgBox("年度社員番号が999を超えています。",VbOkOnly,"社員番号発行") End Sub

noname#72144
質問者

お礼

別のコードでできました。 ありがとうございました。

noname#72144
質問者

補足

コピペさせて頂いてみたのですが、何も起こりませんでした・・・。 何がいけなかったのでしょうか・・。

関連するQ&A