2013-08-06 2 views
0

BeforeDoubleClick 절차를 사용하여 Excel 2010에서 매크로를 트리거하려고합니다. 그러나 작동하지 않는 것 같습니다. 나는 다른 사람들이 같은 문제를 겪고 있는지 몇 가지를 찾고 광범위하게 조사해 보았지만 해결책을 찾았지만 적용 할 수 없거나 효과가 없었습니다. 코드를 테스트하기 위해 코드를 제거한 상태에서 코드가 매우 간단합니다. 내 코드에 어리석은 문제가 있습니까? 내가 직접 실행 창에 "Application.EnableEvents = true"로두고, 공공 하위로 설정 시도BeforeDoubleClick 매크로 트리거가 Excel 2010에서 작동하지 않습니다. VBA

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 
    If Target.Value = "GO" Then Cancel = True 
    MsgBox ("done") 
End Sub 

(I는 스택 오전 VB 멍청한 놈은 너무 기다려주십시오). 모든 매크로를 사용할 수 있도록 통합 문서가 설정됩니다. 추가 기능이 실행되고 있지 않습니다. 나는 XLSTART 폴더를 통해 그 모든 빈 있습니다. 누군가가 제안한대로 한 곳에서 디지털 서명을 만들었습니다. 이전 버전의 Excel과의 호환성 문제가있을 수 있습니까?

또한 cancel = True 인 경우에도 작업 시트를 두 번 클릭하면 셀이 편집을 위해 정상적으로 열립니다.

+0

그것은 나를 위해 작동합니다. 위 코드를 어디에 붙여 넣었습니까? –

답변

1

시트의 로컬 모듈 (예를 들어, 시트 1)에 입력 할 때, 게시 코드는 결함없이 작동합니다 제발 도와주세요. 당신이 값 "GO"로 셀을 더블 클릭하면 사용자 경험의 관점에서 당신은 거의 당신이 [완료] MSGBOX를보고,이를 종료 후 셀로 남아있는, 즉

  1. 어떤 차이를 느낄 없습니다 (예 : "abc"또는 빈 셀)을 클릭하면 [완료] 메시지 상자가 표시되고 다른 셀 (예 : "abc"또는 빈 셀)을 클릭하면 편집 모드로 전환됩니다. 이 값을 종료 한 후에는 현재 값의 마지막 문자 다음에 쓰기 커서가있는 셀 편집 모드에 있으므로 즉시 셀에 입력을 시작할 수 있습니다.

그렇다고해서, 1. 위에서도 아무 것도 입력을 시작할 수 없습니다. 첫 글자를 누르는 것만으로도 "GO"는 입력 한 하나의 글자로 완전히 대체됩니다. 따라서 최종 코드가 셀의 색을 바꾸거나 셀렉션을 재배치하는 것이 아니라면 사용자의 차이는 최소한으로 간과 할 수 있습니다.