>

유지 보수 부서가 방문 일정을 제어 할 수 있도록 MS Access 앱을 설계했습니다.

2 개의 메인 테이블이 있습니다 :

<올>
  • 프로젝트 데이터 (프로젝트 이름, 방문 수, 계약 시작 날짜, 종료 날짜, 금액 등)
  • PPM (방문 횟수, 방문 예정일 및 방문 유형)
  • 현재 첫 번째 테이블에서 새 프로젝트의 데이터를 추가하고 두 번째 테이블을 날짜로 업데이트합니다. 예 : 2017 년 1 월 1 일에 프로젝트를 시작하고 2017 년 12 월 31 일에 종료되며 4 회 방문 (분기 별)을 수행해야합니다. 그래서 우리는 다음과 같이 두 번째 테이블을 업데이트하고 있습니다 :

    Visit no 1 02/01/2017 Quarterly Visit
    Visit no 2 04/01/2017 Quarterly Visit
    Visit no 3 07/01/2017 Quarterly Visit
    Visit no 2 10/01/2017 Quarterly Visit
    
    

    이것은 일정 보고서를 얻을 수 있습니다.

    질문 : 시작일과 종료일을 기준으로 두 번째 테이블 (PPM)을 자동으로 채울 수있는 방법과 각 계약의 방문 횟수는 없습니까?


    • 답변 # 1

      예, VBA 코드가 필요합니다. 다음과 같은 것 :

      Sub CreatePPM(dteStart As Date, dteEnd As Date, strType As String)
      Dim x As Integer, dteVisit As Date
      dteVisit = dteStart
      Select Case strType
          Case "Quarterly"
              'code here
          Case "Daily"
              While dteVisit <= dteEnd
                  CurrentDb.Execute "INSERT INTO PPM(VisitNo, VisitDate, VisitType) Values(" & x & ", #" & dteVisit & "#, 'Daily')"
                  dteVisit = dteVisit + 1
              Wend
      End Select
      End Sub
      
      

      다른 방문 유형을 처리하기 위해 필요에 따라 코드를 수정하십시오. Quarterly 유형의 코딩이 어려운 것 같습니다.

      그런 다음 코드를 넣을 이벤트를 파악하십시오. 프로젝트 데이터 입력 양식의 버튼 클릭 또는 AfterUpdate 이벤트 일 수 있습니다. 레코드가 여러 번 입력되지 않도록하려면 추가 코드가 필요할 수 있습니다.

      코드를 개발하고 특정 문제가있는 경우 질문을 게시하십시오.

    관련 자료

  • 이전 oracle - VARCHAR2 (20 BYTE) 데이터 유형 열이 공백으로 표시됨
  • 다음 SoftLayer API로 클라우드 서버 주문