2017-10-12 7 views
0

레코드를 표시하는 폼이 있습니다 (약 40 개 필드). 약간의 변경이 필요한 경우 (예 : A541AB는 A541AC가됩니다) 레코드를 복제 할 수있는 버튼이 있습니다. interwebs에 대한 몇 가지 솔루션 사례를 보았지만이 UI 작업에 적합한 솔루션을 찾지 못했습니다. 레코드를 복제 할 것인지 묻는 확인 상자를 만들 수 있습니까? 현재 Access VBA에는별로 좋지 않기 때문에 버튼은 매크로를 사용하여 디자인되었습니다.UI 동작 확인을 추가 할 수 있습니까?

답변

0

자동 업데이트를 처리하도록 플래그를 설정하여 VBA에서이 작업을 수행해야합니다. 버튼을 클릭하면 사용자에게 묻고 대답이 예인 경우 저장합니다.

'Set a flag for manual update 
Private mIsUserUpdate As Boolean 'Flag 

'Cancel auto-update 
Private Sub Form_BeforeUpdate(Cancel As Integer) 
    If Not mIsUserUpdate Then Cancel = True 
End Sub 

'Save Button - Change 'YourButtonName' 
Private Sub YourButtonName_Click() 
    If MsgBox("Are you sure you want to duplicate the record?", vbYesNo + vbQuestion, "Confirm") = vbYes Then 
     mIsUserUpdate = True 'flag ON 
     DoCmd.RunCommand acCmdSaveRecord 
    End If 
    mIsUserUpdate = False 'flag OFF again 
End Sub 
+0

'자동 업데이트 취소'부분을 제외하고 코드를 사용할 수있었습니다. 그것을 사용하여 내 능력을 통해 레코드를 저장합니다. 도움에 다시 한번 감사드립니다. – Lando