통합 문서 위치 및 크기 기억 (Microsoft Excel)
Walter는 항상 화면의 동일한 위치에서 특정 창 크기로 특정 Excel 통합 문서를 열어야합니다. 그는 통합 문서를 닫을 때 Excel에서이 위치와 크기 정보를 기억하도록하여 동일한 통합 문서를 다음에 열 때 사용하도록하는 방법이 있는지 궁금합니다.
비교적 간단한 방법 중 하나는 통합 문서 (또는 종종 통합 문서)를 화면에 원하는대로 배치 한 다음 통합 문서를 작업 영역으로 저장하는 것입니다. 리본의보기 탭을 표시하고 작업 공간 저장 도구를 클릭하면됩니다. 그러나이 접근 방식은 Excel 2007 및 Excel 2010에서만 작동합니다. 작업 영역을 만드는 기능은 여전히 열 수 있지만 Excel 2013에서는 제거되었습니다.
모든 최신 버전의 Excel에서 작동하는 솔루션의 경우 매크로를 사용해야합니다. 통합 문서를 닫을 때 자동으로 실행되는 매크로와 열 때 실행되는 다른 매크로를 설정할 수 있습니다. 닫을 때 실행되는 항목은 위치 정보를 저장할 수 있으며, 열 때 실행되는 항목은 해당 정보를 검색하여 통합 문서가 표시되어야하는 위치를 찾는 데 사용할 수 있습니다.
그러나 문제는 위치 정보를 저장할 위치입니다. 한 가지 해결책은 통합 문서가 저장된 동일한 폴더의 텍스트 파일에 간단히 작성하는 것입니다. 이것이 다음 매크로 쌍에서 취한 접근 방식입니다.
Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim fileName As String Dim myWindow As Window Set myWindow = ActiveWindow fileName = "config.txt" Open fileName For Output As #1 With myWindow Write #1, .Top Write #1, .Left Write #1, .Height Write #1, .Width End With Close #1 End Sub
Private Sub Workbook_Open() Dim inputStr As String Dim fileName As String Dim myWindow As Window Set myWindow = ActiveWindow fileName = "config.txt" If Dir(fileName) <> "" Then Open fileName For Input As #1 With myWindow .WindowState = xlNormal Line Input #1, inputStr .Top = inputStr Line Input #1, inputStr .Left = inputStr Line Input #1, inputStr .Height = inputStr Line Input #1, inputStr .Width = inputStr End With Close #1 End If End Sub
통합 문서가 닫힐 때 실행되는 매크로는 4 개의 위치 지정 위치 (.Top, .Left, .Height 및 .Width)를 config.txt라는 파일에 저장합니다. 그런 다음 통합 문서가 다음에 열리고 통합 문서 창에 대한 적절한 속성이 설정 될 때이 파일을 읽습니다.
어떤 이유로 config.txt 파일이 누락 된 경우 통합 문서가 기본 위치에서 열립니다.
이 방법은 위치 정보를 사용하는 폴더에 단일 통합 문서가있는 경우 유용합니다. 여러 파일이있는 경우 각 파일이 config.txt 파일을 덮어 쓰게되어 원하는 위치에서 통합 문서가 열리지 않을 수 있습니다.
일부 사람들에게는 더 나은 접근 방식이 통합 문서 자체의 위치 지정 위치를 명명 된 참조에 저장하는 것입니다. 이것이 다음 매크로에서 취한 접근 방식입니다.
Private Sub Workbook_BeforeClose(Cancel As Boolean) On Error Resume Next With ThisWorkbook With .Names .Add Name:="WinTop", RefersToR1C1:="=1" .Add Name:="WinLeft", RefersToR1C1:="=1" .Add Name:="WinWidth", RefersToR1C1:="=1" .Add Name:="WinHeight", RefersToR1C1:="=1" End With On Error GoTo 0 .Names("WinTop").RefersTo = ActiveWindow.Top .Names("WinLeft").RefersTo = ActiveWindow.Left .Names("WinWidth").RefersTo = ActiveWindow.Width .Names("WinHeight").RefersTo = ActiveWindow.Height End With End Sub
Private Sub Workbook_Open() With ThisWorkbook ActiveWindow.Top = Val(Mid(.Names("WinTop").RefersTo, 2)) ActiveWindow.Left = Val(Mid(.Names("WinLeft").RefersTo, 2)) ActiveWindow.Width = Val(Mid(.Names("WinWidth").RefersTo, 2)) ActiveWindow.Height = Val(Mid(.Names("WinHeight").RefersTo, 2)) End With End Sub
이 접근 방식을 사용하면 통합 문서를 원하는 위치로 쉽게 전송할 수 있으며 매크로는 통합 문서 창의 위치 정보를 저장하고 재사용합니다.
_ 참고 : _
이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.
link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요]
.
_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.
이 팁 (10091)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.