셀 값을 사용하여 선택 영역의 가운데 조정 (Microsoft Excel)
Jean은 셀 서식 대화 상자의 정렬 탭에서 “선택 영역 중심”설정을 사용하여 병합되지 않은 셀의 정보를 가운데에 맞추는 것을 좋아합니다. 그러나 그녀는 한 셀의 내용을 사용하여 센터링이 발생하는 셀 수를 제어 할 수있는 방법이 있는지 궁금합니다. 예를 들어, A1 셀에 숫자 4가있는 경우 4 개 셀 (B1 : E1)을 중심으로하지만 5로 변경하면 5 개 셀 (B1 : F1)을 중심으로합니다.
이를 수행 할 수있는 유일한 방법은 매크로를 사용하는 것입니다. A1 셀의 값을 변경할 수 있기 때문에 통합 문서를 변경할 때마다 매크로를 실행 한 다음 A1 셀에서 변경되었는지 여부를 확인해야합니다. 그렇다면 행의 셀을 조정할 수 있습니다.
Private Sub Worksheet_Change(ByVal Target As Range) Dim sWidth As String Dim sStartCell As String Dim iWidth As Integer Dim r As Range Dim sTemp As String sWidth = "$A$1" sStartCell = "$B$1" If Target.Address = sWidth Then iWidth = Range(sWidth).Value If iWidth > 1 Then sTemp = Right(sStartCell, 1) sTemp = sTemp & ":" & sTemp Range(sTemp).HorizontalAlignment = xlGeneral Set r = Range(sStartCell) Set r = r.Resize(1, iWidth) r.HorizontalAlignment = xlCenterAcrossSelection End If End If End Sub
이 매크로는 영향을 주려는 워크 시트의 코드 시트에 있습니다. 워크 시트가 변경 될 때마다 매크로가 자동으로 실행됩니다. 작동하도록하려면 sWidth 및 sStartCell 변수에 할당 된 주소를 변경해야합니다. sWidth는 가운데에 배치 할 열 수를 포함하는 셀로 설정됩니다. sStartCell은 센터링이 발생하는 범위의 왼쪽에있는 첫 번째 셀로 설정됩니다.
매크로는 sWidth 셀에있는 모든 항목을 가져와 iWidth 변수에 배치합니다. 이 값이 1보다 크면 중심이 변경됩니다. (2 열 미만의 선택 영역을 가운데로 맞추는 것은 의미가 없습니다.) 모든 셀의 정렬은 행이 다시 일반으로 설정된 다음 지정한 너비만큼 범위가 정의됩니다. sStartCell의 셀에서. 이 범위의 경우 원하는 결과를 제공하기 위해 정렬이 xlCenterAcrossSelection으로 설정됩니다.
_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.
이 팁 (4360)은 Microsoft Excel 2007, 2010, 2013 및 2016에 적용됩니다.