Brian은 다른 지원 통합 문서를 아주 잠깐 연 다음 닫아 변경 내용을 저장하는 복잡한 통합 문서를 가지고 있습니다. 그는 자신의 매크로를 사용하는 세 사람이있는 사무실을 가지고 있으며 때때로 두 사람이 http://www.formville.com/C17_free-purchase-orders.html [구매 주문]을 얻으려고하는 충돌이 발생합니다

동시에 번호. 이로 인해 두 번째 발생시 PO 통합 문서가 ‘읽기 전용’모드로 열리게되며, 이는 사용자에게 혼란을줍니다. Brian은 다른 사용자가 대상 통합 문서를 이미 연 경우 ‘통합 문서 열기’명령을 중지하는 VBA 코드 줄이 있는지 궁금합니다. 그러면 잠재적 인 문제가 발생하기 전에 포착 할 수 있습니다.

코드를 연 후 통합 문서가 읽기 전용 모드로 열렸는지 확인하는 것이 훨씬 쉽습니다. 그렇다면 상황에 맞는 조치를 취할 수 있습니다. (예를 들어 통합 문서를 닫고 잠시 기다린 다음 작업을 다시 시도하고 테스트 할 수 있습니다.) 다음은 읽기 전용 상태를 확인하는 방법입니다.

Set wkBook1 = Workbooks.Open("c:\MyBigBook.xlsx")



If wkBook1.ReadOnly Then     wkBook1.Close False End If

원하는 정보를 생성하는 것은 ReadOnly 속성입니다. 미리 파일을 확인해야하는 경우 VBA에서 사용 가능한 일부 파일 액세스 문을 사용해 볼 수 있습니다. 그것이 다음 함수가하는 일입니다.

Function FileIsLocked(strFileName As String) As Boolean     FileIsLocked = False     On Error Resume Next     Open strFileName For Binary Access Read Write Lock Read Write As #1     Close #1

' If an error occurs, the document is currently open     If Err.Number <> 0 Then        FileIsLocked = True        Err.Clear     End If End Function

함수를 사용하려면 확인하려는 통합 문서의 이름 (전체 경로 포함)을 전달하십시오. 이 함수는 파일이 잠겨 있으면 True를 반환하고 그렇지 않으면 False를 반환합니다. 그러나이 함수가 파일을 확인한 시점부터 실제로 파일을 열려고 할 때까지 다른 사람이 파일을 열었을 수 있음을 기억하십시오. 따라서 첫 번째 방법 (개방을 시도한 후 확인)이 가장 좋은 방법 일 수 있습니다.)

또한 다른 통합 문서를 공유 통합 문서로 저장할 수도 있습니다. 이를 통해 여러 사용자가 문제없이 열 수 있습니다. 물론이 방법이 통합 문서에 저장하려는 데이터에 어떤 영향을 미치는지 확인하고 싶을 것입니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (5831)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.