2012-11-20 2 views
1

ActiveX가 사용되는 스프레드 시트가 있습니다. 사용자가 아니요을 처음 선택하면 ActiveX를 처음 요청한 다음 워크 시트를 저장할 때 워크 시트에 ActiveX를 다시 사용하도록 묻는 메시지가 표시되지 않습니다.ActiveX가 비활성화 된 상태로 저장된 Excel 2003 스프레드 시트는 더 이상 ActiveX 용 프롬프트가 나타나지 않습니다.

그러나 개발중인 워크 시트에는 ActiveX가 활성화되어 있어야합니다. 그래서 제 질문은 :는 사용자가 없음 액티브 사용할 것인지 묻는 메시지와 워크 시트를 저장 처음 선택하지

합니다. 워크 시트를 다시 열 때 ActiveX를 묻는 메시지를 표시하려면 어떻게합니까? 다시 말해, 사용자가 ActiveX를 사용하도록 항상 묻는 방법은 무엇입니까?

+0

매크로가 활성화 된 경우, 통합 문서 공개 이벤트에서 메시지 상자를 열 수 있습니다. 그런 다음 확인을 클릭하면 보내기 키를 사용하여 Excel 옵션을 엽니 다. 그러나 이것은 여전히 ​​사용자가 무엇을 사용할 것인지를 알 필요가 있습니다. – scott

+0

당신의 유일한 옵션은 통합 문서가 제대로 작동하려면 ActiveX 컨트롤이 활성화되어 있어야한다고하는 파일에 면책 조항을 넣는 것입니다. 그런 다음 모르는 경우 어떻게하는지 보여주는 작은 다이어그램을 작성하십시오. –

+0

경고 메시지에서 사용자가 ActiveX 설치를 수락하지 않으면 시트가 작동하지 않는다고 강요 할 수 있습니까? 그들이 부정이라고 말할 때, 당신은 시트를 닫습니다. 폭탄! 아무도 그러한 소름 끼치는 것을 좋아하지 않습니다. 그래서 그들은 그것을 설치합니다 :) Whee. – bonCodigo

답변

0

내 워크 시트에 ActiveX 매크로가 활성화되어 있지 않으면 오류가 발생하는 로그인 매크로가 있습니다. 따라서 ActiveX가 활성화되어 있지 않으면 나는 그 오류를 찾아 잡았고 강제로 워크 시트를 저장하고 종료했습니다.

코드 :

Private Sub Workbook_Open() 
    ' ...some code... 
    On Error GoTo InitializeLoginErrorHandler: 
    DoLogin 

    Exit Sub 

    InitializeLoginErrorHandler: 
    MsgBox "ActiveX has not been enabled. ActiveX must be enabled for worksheet to function. Restart worksheet and enable ActiveX." _ 
     & vbNewLine & vbNewLine & "worksheet will now close without saving any changes." 
    ThisWorkbook.Close savechanges:=False 
End Sub 

Private Sub DoLog() 
    ' Login to system through linked .dlls and .ocx. This portion requires ActiveX to be enabled. 
End sub 
+0

오류를 분리 한 코드를 게시 할 수 있습니까? 나중에 이것을 사용하고 싶을 수도 있습니다 – scott

+0

@scott, 특별한 것은 없지만 오류 처리와 플래그 만 있습니다. – czchlong