Christopher는 매크로 내에서 Excel 프로그램 창의 크기를 설정해야합니다. 그는 프로그램 창에서 워크 시트의 크기를 설정하는 방법을 알고 있지만 필요한 것은 아닙니다. 그는 프로그램 창의 전체 크기를 설정하고 사용자의 실제 화면 크기보다 크게 설정하지 않는지 확인하는 방법을 궁금해합니다.

매크로에서 사용할 개체와 속성을 알고 있으면이 작업을 쉽게 수행 할 수 있습니다. 사용하려는 개체는 Excel 응용 프로그램을 참조하는 Application 개체입니다. 관련 속성은 다음과 같습니다.

Top. * 응용 프로그램 창의 위쪽 가장자리가 배치되어야하는 화면 픽셀입니다.

Left. * 응용 프로그램 창의 왼쪽 가장자리가 배치되어야하는 화면 픽셀입니다.

너비. * 응용 프로그램 창의 너비 (픽셀)입니다.

높이. * 응용 프로그램 창의 높이 (픽셀)입니다.

이를 염두에두고 다음과 같은 방식으로 프로그램 창의 위치와 크기를 설정할 수 있습니다.

Sub SetWindowSize1()

Application.WindowState = xlNormal     Application.Top = 25     Application.Left = 25     Application.Width = 300     Application.Height = 200 End Sub

이 매크로는 프로그램 창의 왼쪽 위 모서리를 화면 상단에서 25 픽셀, 화면 왼쪽에서 25 픽셀로 지정합니다. 그런 다음 프로그램 창은 너비 300 픽셀, 높이 200 픽셀로 설정됩니다. 또한 첫 번째 매크로에서 WindowState 속성의 설정에 유의하십시오. 이것은 창을 “정상”상태로 설정합니다. 즉, 최소화 된 것보다 더 크고 최대화 된 것보다 작은 것으로 크기를 조정할 수 있음을 의미합니다. (Excel 프로그램 창을 전체 화면으로 표시하려면 WindowState 속성을 xlMaximized로 설정하고 매크로의 나머지 설정은 잊어 버리십시오.)

물론이 매크로는 Excel 프로그램 창을 다소 작게 설정합니다.

모든 경우에 당신은 그것이 더 커지기를 원할 것이지만, 그것이 사용자의 화면 크기보다 더 커지는 것을 원하지는 않을 것입니다. 사용자 화면의 크기를 알아내는 가장 쉬운 방법은 Excel 응용 프로그램 창을 최대화 한 다음 Width 및 Height 속성을 보는 것입니다. 그런 다음 화면의 왼쪽 상단 모서리를 원하는 위치에 따라 해당 수치를 조정 한 다음 그에 따라 조정할 수 있습니다.

예를 들어, 프로그램 창을 25, 50에서 시작하고 1000 x 500으로 지정하려고한다고 가정합니다. 다음과 유사한 코드를 사용할 수 있습니다.

Sub SetWindowSize2()

Dim iMaxWidth As Integer     Dim iMaxHeight As Integer     Dim iStartX As Integer     Dim iStartY As Integer     Dim iDesiredWidth As Integer     Dim iDesiredHeight As Integer

iStartX = 50      ' Distance from left     iStartY = 25      ' Distance from top     iDesiredWidth = 1000     iDesiredHeight = 500

With Application         .WindowState = xlMaximized         iMaxWidth = Application.Width         iMaxHeight = Application.Height

' Adjust for starting point         iMaxWidth = iMaxWidth - iStartX         iMaxHeight = iMaxHeight - iStartY         If iDesiredWidth > iMaxWidth Then             iDesiredWidth = iMaxWidth         End If         If iDesiredHeight > iMaxHeight Then             iDesiredHeight = iMaxHeight         End If

.WindowState = xlNormal         .Top = iStartY         .Left = iStartX         .Width = iDesiredWidth         .Height = iDesiredHeight     End With End Sub

_ 참고 : _

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

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

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

이 팁 (10938)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다.

Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁의 버전은 여기에서 찾을 수 있습니다.

link : / excelribbon-Setting_Program_Window_Size_in_a_Macro [매크로에서 프로그램 창 크기 설정].