2008-10-20 5 views
3

나는 맞춤형 캐비닛 제조업체에서 일하고 우리 제품에 대한 자체 가격 책정 프로그램을 작성합니다. 팝업 상자가있는 양식이있어서 사용자는 해당 캐비닛의 모호한 문을 위해 힌지가 어느면에 있는지 선택할 수 있습니다. 지금까지 작업 해 보았지만 항목을 복사하여 아래쪽에 붙여 넣으면 팝업 상자가 나타나지 않습니다. 새 레코드가 수동으로 붙여 넣거나 입력되는지 여부를 확인하기 위해 Access VBA에 어떤 방법이 있습니까?붙여 넣기 이벤트를 잡으시겠습니까?

답변

1

당신과 같은 코드를 추가 할 경우 당신은 너무 표준 모듈에 예를 들어, 메뉴를 사용자 정의 할 수 있습니다

Public gvarPasted As Boolean 

Function AssignVar() 
    gvarPasted = True 
    DoCmd.RunCommand acCmdPaste 
End Function 

당신은 사용자 정의를 사용하여이 기능을 메뉴에서 붙여 넣기의 동작 속성을 설정할 수 있습니다 도구 모음 메뉴의 옵션. 또한 내장 메뉴 대신 사용할 바로 가기 메뉴 (오른쪽 클릭 메뉴)를 만들어야합니다. 바로 가기 메뉴는 모든 양식 또는 양식을 요구하는 양식에 지정할 수 있습니다. 또한 모든 양식에 대한 바로 가기 메뉴를 해제 할 수도 있습니다.

+0

ctrl-V도 잡을 수 있습니까? – BIBD

+0

슬프게도, 아니오. 결코 깔끔한 것은 아닙니다. – Fionnuala

+0

이 경로를 사용하고 CTRL + V를 잡는 것이 해결해야 할 유일한 문제 일 경우 KeyPress (또는 KeyUp) 이벤트 처리기를 사용하여 수행 할 수 있다고 생각합니까? 깔끔하지는 않지만 ... – Yarik

3

아마 이것의 라인에 뭔가가 적합 할 것입니다.

Option Compare Database 
Public gvarPasted As Boolean 

Private Sub txtText_AfterUpdate() 
If Not gvarPasted Then 
    'Open pop-up here 
Else 
    gvarPasted = False 
End If 
End Sub 

Private Sub txtText_KeyDown(KeyCode As Integer, Shift As Integer) 
'Detect ctrl-V combination 
If Shift = acCtrlMask And KeyCode = vbKeyV Then 
    gvarPasted = True 
End If 
End Sub 
+0

이 기능은 Ctrl + V 붙여 넣기에는 작동하지만 붙여 넣기를 오른쪽 클릭하지 마십시오. – Hill

관련 문제