|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
- 액세스 버전(95,97,2000,xp,2003,2007): 2019
* 아래줄에 질문을 작성하세요 >>
첨부파일의 보고서에 보시면 "수주일자 - NO :"에 날짜별로 1~999번까지 발생되도록 하였습니다. [2021/03/25 - 002] <== 999번까지 자동생성되는 함수는 하기와 같습니다.
화면 폼에서 name 2 업데이트 후에 하기와 같은 코드로 번호 생성이 되는데요..
Private Sub name2_AfterUpdate()
DoCmd.OpenForm "gurae"
If Me.NewRecord Then
A = DMax("출고번호", "주문상위")
If IsNull(A) Then
no = Format(Cal, "yy") & Format(Cal, "mm") & Format(Cal, "dd") & "-" & "001"
상세내역.SetFocus
가공종류.SetFocus
Else
A = A + 1
no = Format(Cal, "yy") & Format(Cal, "mm") & Format(Cal, "dd") & "-" & Right("000" & A, 3)
Forms!주문상위!상세내역.SetFocus
Forms!주문상위!가공종류.SetFocus
End If
End If
일자별 작업지시서 no를 매월별로 바꾸고 싶은데 너무 어렵네요..
ex) [2021/03-0001] ===> [2021/03-9999]
도움 부탁드립니다.
액세스 프로그램은 너무 커서 파일첨부가 되지 않네요..
필요하시다면 메일로 첨부드리도록 하겠습니다.
감사합니다.
연락처 : 010-6220-4924 , shk008@naver.com
==============[마당쇠님 글에 대한 답변입니다]==============
테이블 구조를 알수없어 임의로 작성 했습니다.
첨부 파일 확인해보세요~
If IsNull(수주일자) Then
Me.수주일자.SetFocus
Else
If IsNull(수주번호) Then
Dim strYYMM
Dim strNo
strYYMM = Format(수주일자, "yyyy") & "/" & Format(수주일자, "mm")
strNo = DMax("수주번호", "테이블1", "left(수주번호,7)='" & strYYMM & "'")
If IsNull(strNo) Then
Me.수주번호 = strYYMM & "-0001"
Else
Me.수주번호 = strYYMM & "-" & Format(Right(strNo, 4) + 1, "0000")
End If
End If
End If |
|