Excel 스프레드 시트는 Project
구조에 프로그래밍 방식으로 액세스해야합니다. 그러나이 액세스는 기본적으로 사용되지 않습니다. 이 조각으로 레지스트리에 기록하여 프로그래밍 방식으로 활성화 할 수 있습니다보안 기능을 사용할지 여부
Set wsh = CreateObject("WScript.Shell")
'key to modify'
str1 = "HKEY_LOCAL_MACHINE\Software\Microsoft\Office\" & Application.Version & "\Word\Security\AccessVBOM"
'enable access'
wsh.RegWrite str1, 1, "REG_DWORD"
'read the vba project name'
MsgBox Application.NormalTemplate.VBProject.Name
'disable access'
wsh.RegDelete str1
프로그래밍, 이것은 보안 문제를 만들 수 있습니다.
내 프로젝트에서는 Project
구조를 수정하려고 시도하고 오류가 발생하지 않으면 오류를 던집니다. 오류를 포착 할 수 있으며이 시점에서 스 니펫을 실행하여 액세스를 활성화하거나 오류 메시지를 표시하여 사용자가 수동으로 액세스 할 수있게 할 수 있습니다. 프로그램을 통해 액세스를 활성화하는 것이 더 좋습니까? 나중에 프로그램을 비활성화하거나 사용자에게 그렇게하도록 지시 할 수 있습니까?
나는이 질문을 베스트 프랙티스 태그와 함께 게시했습니다. 무례한 "소프트웨어. 시작시 설정을 읽는 Office에 대한 귀하의 언급은이 문제를 해결할 수 있습니다 - 파일 열기 또는 응용 프로그램을 열 때 레지스트리를 확인합니까? –