2012-12-31 1 views
0

VBScript를 사용하여 같은 통합 문서의 여러 시트에서 많은 계산을 수행하고 있습니다. 한 가지 우려는 어떻게 든 누군가 시트를 삭제하면 스크립트가 대량의 데이터 손실을 초래할 수 있다는 것입니다. 사용자로부터 보호 할 수있는 방법이 있습니까?VBScript를 보호 된 Excel 시트에서 실행할 수 있습니까?

+0

사용자로부터 보호한다는 것은 무엇을 의미합니까? 사람들이 귀하의 통합 문서를 사용하기를 원하지 않습니까? 시트/워크 북을 살펴 보았습니까? –

+0

@DanielCook 시트를 잠그고 싶지만 스크립트를 통합 문서의 해당 시트에서 실행할 수 있습니까? – CodeLover

+0

스크립트가하는 일에 달려 있습니다. 잠긴 시트에서 아무런 문제없이 값을 검색 할 수 있습니다. 시트를 잠글 수 있지만 코드 목적으로는 잠금 해제 상태로 둡니다. –

답변

1

(이 대답의 끝 부분에있는 편집을 읽을 수 있는지 확인)

나는 데이터베이스와 같은 사용 시트, 그래서 정보 보호의 우려를 이해하고 만든 유사한 통합 문서가 있습니다. 통합 문서를 보호하는 경우 시트/책에 대한 특정 변경을 수행하지 못하게됩니다. 그러나 시트 내용 만 보호하려면 UserInterfaceOnly 설정을 사용하면 사용자가 시트를 보호하면서 자유롭게 매크로를 실행할 수 있습니다. 시트를 열 때 보호되는지 여부를 감지 할 수 있으며 그렇지 않은 경우 시트를 보호 할 수 있습니다.

Sub test() 

dim mySheet as worksheet 
dim myPass as string 

myPass = "password" 
set mySheet = Excel.ActiveSheet 
if mySheet.ProtectContents = False then 
    mySheet.Protect Password:=myPass, UserInterfaceOnly:=True 
end if 

'Enter your code here 

mySheet.Unprotect Password:=myPass 

End Sub 

또한, 사용자에게 경고 후, 당신은 검토 탭에서 보호/보호 해제 시트 그룹을 제거하는 사용자 정의 UI 편집기를 사용하여 다음으로 대체 할 수있는 시트 보호를 해제 할 수있는 기능을 제공하려는 경우 사용자 정의 된 버튼. 나는 이것을 과거에 해왔고 나중에 시트를 유지하는 데 많은 도움이되었습니다. 아래 사용자 정의 UI 편집기에 몇 개의 링크를 포함 시켰습니다.

  • Custom UI Editor Tutorial - Change the Ribbon in Excel 2007 or 2010
  • Custom UI Editor Download

    • 는 편집 : 나는이 질문을 생각 언뜻

      는 (내 나쁜) VBA에 관한 것이었다. 나는 위의 코드가 여전히 적용될 수 있다고 믿고, 태그 내에 코드를 배치하고 통합 문서 및 워크 시트 변수를 올바르게 설정합니다 (위에 설정된 방식이 아님). 통합 문서/워크 시트 시트 개체를 설정/참조하는 방법을 아직 모르는 경우 this forum post에 표시됩니다. 비록 내가 일반적으로 VBscript를 사용하지는 않지만 포럼은 정확 해 보입니다. 행운을 빕니다!

    +0

    나는 Excel에서 작업하기 위해 vbscript를 사용하고 있으므로, 어떻게 그리고 어디에서 코드를 실행해야합니까? – CodeLover

    +0

    오, 내 잘못. 나는 그것이 VBA를 말했다고 생각. 내 대답을 업데이트 할게. – Lopsided

    0

    이것은 몇 년 전 이었지만, 답변을 검색 할 때 나는 그것을 만났습니다. 누군가가이 도움을 얻을 수 있기를 바랍니다.

    먼저 다른 사용자가 읽기 전용으로 열 수있는 방법으로 통합 문서에 암호를 추가하십시오. http://msdn.microsoft.com/en-us/library/office/ff194819%28v=office.15%29.aspx

    희망을하는 데 도움이 : 엑셀 파일 (들)

    Set oExcel = CreateObject("Excel.Application") 
    Set oWorkbook = oExcel.Workbooks.Open(file.path,,,,"password","password",True,,True,True) 
    
    이 이 스위치

    전체 목록은 여기에서 찾을 수 있습니다을 열 때 다음

    http://www.k2e.com/tech-update/tips/728-tips-adding-a-password-to-make-an-excel-workbook-read-only

    는 VBScript를의 일부로 만들려면 , 이것을 알아 내기 위해 몇 시간 걸렸다.

    관련 문제