VBA를 사용하여 Access에서 나만의 분할 양식을 만드는 방법

지금 공유 :

Access의 분할 양식은 매우 유용합니다. 불행히도 탐색 양식 안에 배치하면 작동하지 않습니다. Access의 분할 양식 기능을 시뮬레이트하고 탐색 양식 내에서도 작동하도록 만드는 VBA 함수를 만드는 방법을 알아봅니다.

분할 양식을 사용하면 양식 보기와 데이터시트 보기의 두 가지 레코드 보기를 동시에 볼 수 있습니다. 모든 기록에 대한 개요를 제공하는 동시에 하나씩 보고 편집할 수 있는 옵션을 제공합니다.

불행하게도, 분할된 양식은 내비게이션 양식에 넣을 때 작동하지 않습니다. 이에 대한 해결 방법이 있습니다. VBA를 사용하여 Access의 분할 형식을 시뮬레이트할 고유한 기능을 만들 수 있습니다. 아래 단계를 따르십시오.

다운로드

원하는 경우tar기능을 최대한 빨리 사용하려면 다음을 수행 할 수 있습니다.

지금 VBA 코드가 포함 된 샘플 데이터베이스 다운로드

그렇지 않고 DIY를 원한다면 아래 내용을 읽을 수 있습니다.

VBA를 사용하여 Access에서 나만의 분할 양식을 만드는 단계

1. 분할 양식을 열고 기본 보기를 단일 양식으로 업데이트하십시오. 분할 양식을 열고 기본 보기를 단일 양식으로 업데이트

  1. 분할 양식을 엽니다.
  2. 디자인 보기에서 양식을 선택합니다.
  3. 속성 시트(ALT + Enter) > 양식 탭으로 이동합니다.
  4. 기본 보기를 단일 양식으로 변경합니다.
  5. 양식을 닫고 저장하십시오.

2. 양식의 복사본을 만듭니다. 이는 데이터시트 보기 역할을 합니다.

  1. 탐색 창으로 이동합니다.
  2. 양식을 마우스 오른쪽 버튼으로 클릭하고 복사를 선택합니다.
  3. 탐색 창의 빈 영역을 마우스 오른쪽 버튼으로 클릭하고 붙여넣기를 선택합니다.
  4. 양식 이름을 변경합니다. "_Datasheet"를 추가하십시오.

예:

  • 형식: 회원
  • 양식 사본: Members_Datasheet

3. 데이터시트 양식을 열고 해당 양식 보기 속성을 업데이트합니다.

  1. 데이터시트 양식을 엽니다.
  2. 디자인 보기에서 양식을 선택합니다.
  3. 속성 시트 > 양식 탭으로 이동합니다.
  4. 다음 속성을 업데이트합니다.
    • 기본 보기: 데이터시트
    • 데이터시트 보기 허용: 가능
    • 양식 보기 허용: 아니
  5. 양식을 닫고 저장하십시오.

4. 기본 양식을 다시 열고 데이터시트 양식을 하위 양식으로 추가합니다.

  1. 디자인 보기에서 기본 양식(복사된 양식)을 엽니다.
  2. 하위 양식을 추가합니다.
    • 디자인 메뉴로 이동합니다. 하위 양식/하위 보고서를 선택합니다.하위 양식 선택
    • 양식의 세부사항 영역을 클릭하십시오.
    • 하위 폼 마법사가 나타납니다.하위 폼 마법사

1. '기존 양식 사용'을 클릭합니다.

2.데이터시트 양식을 선택합니다.

3. 다음을 클릭합니다.'나만의 정의'를 선택하세요.

4. '나만의 정의'를 선택합니다.

5. 마침을 클릭합니다.

3. 이제 데이터시트 양식이 기본 양식의 하위 양식입니다. 원하는 크기와 위치로 조정하십시오.

5. 마지막으로 코드를 추가합니다.

  1. VBA 편집기를 엽니다(ALT + F11).
  2. 기본 양식을 선택하고 다음 코드를 붙여넣습니다.기본 양식을 선택하고 코드 붙여넣기
'MAIN FORM
Option Explicit

Private Sub Form_AfterUpdate()
   Me.Members_Datasheet.Requery
End Sub

Private Sub Form_Current()
   If Me.NewRecord Then
     Me.Members_Datasheet.Form.Recordset.AddNew
   Else
     Me.Members_Datasheet.Requery
   End If
End Sub
  1. 코드를 복사한 후 해당 단어의 모든 인스턴스를 바꿉니다. 구성원_데이터시트 데이터시트 양식의 실제 이름으로.
  2. 완료되면 프로젝트 메뉴에서 데이터시트 양식을 선택하고 아래 코드를 복사합니다.
'SUBFORM/DATASHEET FORM
Option Explicit

Private Sub Form_AfterUpdate()
   Me.Parent.Form.Requery
End Sub

Private Sub Form_Current()

  Dim pk_field As String, pk_tbox As Control
  Dim primaryKey As String, strSearch As String
 
  Set pk_tbox = Me.Member_ID 'textbox containing primary key *
  pk_field = "Member_ID" 'primary key field name *

  primaryKey = Nz(pk_tbox.Value, 0) 'change value to 0 if null
  pk_field = "[" & pk_field & "]" 'enclose field name with brackets
 
  If primaryKey <> 0 Then 'if not null (or not a new record)
    strSearch = pk_field & "=" & primaryKey
    Me.Parent.Recordset.FindFirst strSearch
  Else
     Me.Parent.Form.Recordset.AddNew
  End If

End Sub
  1. 다음 변수의 값을 업데이트합니다.
  • pk_tbox – 기본 키가 포함된 텍스트 상자를 나타냅니다.
  • pk_필드 – 레코드 소스의 기본 키 필드를 나타냅니다.

댓글 섹션에 별표(*)가 있어 쉽게 찾을 수 있습니다.

  1. 완료되면 변경 사항을 저장하고(CTRL + S) VBA 편집기를 닫습니다.

이제 탐색 양식 내에 고유한 분할 양식을 추가할 수 있습니다. 사용해 보세요!

손상된 액세스 데이터베이스 수정(.accdb)

Access 데이터베이스가 손상되는 데는 여러 가지 이유가 있을 수 있습니다. 슬프게도, 우리는 m에 대한 통제권이 없습니다.ost 그들의. 만약 당신에게 그런 일이 일어난다면, 그것을 복구할 수 있는 방법이 여전히 있다는 것을 기억하세요. DataNumen Inc.는 다음을 수행하는 소프트웨어를 만들었습니다. accdb 수리. 확인 해봐.

저자 소개 :

Jayme Stack은 데이터 복구 전문가입니다. DataNumen, Inc.는 다음과 같은 데이터 복구 기술 분야의 세계적 리더입니다. SQL 복구 그리고 엑셀 복구 소프트웨어 제품. 자세한 내용은 WWW.datanumen.COM

지금 공유 :

댓글이 닫혀있다.