Skip to main content

Kutools for Office — 하나의 패키지. 다섯 가지 도구. 더 많은 일을 처리하세요.

Excel에서 지정된 셀 값에 따라 도형 크기를 자동으로 변경하는 방법은 무엇입니까?

Author Siluvia Last modified

지정된 셀의 값에 따라 도형 크기를 자동으로 변경하려는 경우 이 문서가 도움이 될 수 있습니다.

VBA 코드를 사용하여 지정된 셀 값에 따라 도형 크기 자동 변경


VBA 코드를 사용하여 지정된 셀 값에 따라 도형 크기 자동 변경

다음 VBA 코드는 현재 워크시트에서 지정된 셀 값에 따라 특정 도형 크기를 변경하는 데 도움이 됩니다. 아래 단계를 따르세요.

1. 크기를 변경해야 하는 도형이 있는 시트 탭을 마우스 오른쪽 버튼으로 클릭한 다음, 마우스 오른쪽 버튼 메뉴에서 코드 보기(View Code)를 클릭합니다.

2. Microsoft Visual Basic for Applications 창에서 다음 VBA 코드를 복사하여 코드(Code) 창에 붙여넣습니다.

VBA 코드: Excel에서 지정된 셀 값에 따라 도형 크기 자동 변경

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Row = 2 And Target.Column = 1 Then
        Call SizeCircle("Oval 2", Val(Target.Value))
    End If
End Sub
Sub SizeCircle(Name As String, Diameter)
    Dim xCenterX As Single
    Dim xCenterY As Single
    Dim xCircle As Shape
    Dim xDiameter As Single
    On Error GoTo ExitSub
    xDiameter = Diameter
    If xDiameter > 10 Then xDiameter = 10
    If xDiameter < 1 Then xDiameter = 1
    Set xCircle = ActiveSheet.Shapes(Name)
    With xCircle
        xCenterX = .Left + (.Width / 2)
        xCenterY = .Top + (.Height / 2)
        .Width = Application.CentimetersToPoints(xDiameter)
        .Height = Application.CentimetersToPoints(xDiameter)
        .Left = xCenterX - (.Width / 2)
        .Top = xCenterY - (.Height / 2)
    End With
ExitSub:
End Sub

참고: 코드에서 “Oval 2”는 크기를 변경할 도형 이름입니다. 그리고 행 = 2, 열 = 1은 도형 “Oval 2”의 크기가 A2 셀의 값에 따라 변경됨을 의미합니다. 필요에 따라 이를 변경하세요.

다양한 셀 값에 따라 여러 도형의 크기를 자동으로 조정하려면 아래 VBA 코드를 적용하세요.

VBA 코드: Excel에서 다양한 지정된 셀 값에 따라 여러 도형 크기 자동 조정

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xAddress As String
    On Error Resume Next
    If Target.CountLarge = 1 Then
        xAddress = Target.Address(0, 0)
        If xAddress = "A1" Then
            Call SizeCircle("Oval 1", Val(Target.Value))
        ElseIf xAddress = "A2" Then
            Call SizeCircle("Smiley Face 3", Val(Target.Value))
        ElseIf xAddress = "A3" Then
            Call SizeCircle("Heart 2", Val(Target.Value))
        End If
    End If
End Sub

Sub SizeCircle(Name As String, Diameter)
    Dim xCenterX As Single
    Dim xCenterY As Single
    Dim xCircle As Shape
    Dim xDiameter As Single
    On Error GoTo ExitSub
    xDiameter = Diameter
    If xDiameter > 10 Then xDiameter = 10
    If xDiameter < 1 Then xDiameter = 1
    Set xCircle = ActiveSheet.Shapes(Name)
    With xCircle
        xCenterX = .Left + (.Width / 2)
        xCenterY = .Top + (.Height / 2)
        .Width = Application.CentimetersToPoints(xDiameter)
        .Height = Application.CentimetersToPoints(xDiameter)
        .Left = xCenterX - (.Width / 2)
        .Top = xCenterY - (.Height / 2)
    End With
ExitSub:
End Sub

참고:

1) 코드에서 “Oval 1”, “Smiley Face 3” 및 “Heart 3”은 크기를 자동으로 변경할 도형 이름입니다. 그리고 A1, A2A3은 도형 크기를 자동으로 조정할 기준이 되는 셀입니다.
2) 더 많은 도형을 추가하려면 코드의 첫 번째 "End If" 줄 위에 "ElseIf xAddress = "A3" Then"과 "Call SizeCircle("Heart 2", Val(Target.Value))" 줄을 추가하세요. 그리고 필요에 따라 셀 주소와 도형 이름을 변경하세요.

3. Alt + Q 키를 동시에 눌러 Microsoft Visual Basic for Applications 창을 닫습니다.

이제부터 A2 셀의 값을 변경하면 Oval 2 도형의 크기가 자동으로 변경됩니다. 스크린샷 참조:

 change the value in a specific cell , the size of shape will be changed automatically

또는 A1, A2 및 A3 셀의 값을 변경하여 해당 도형인 “Oval 1”, “Smiley Face 3” 및 “Heart 3”의 크기를 자동으로 조정합니다. 스크린샷 참조:

change the value in a specific cells , the size of shapes will be changed automatically

참고: 셀 값이 10보다 클 경우 도형 크기는 더 이상 변경되지 않습니다.


현재 Excel 워크북의 모든 도형 나열 및 내보내기:

Kutools for Excel차트 내보내기(Export Graphics) 유틸리티를 사용하면 현재 워크북의 모든 도형을 빠르게 나열하고, 아래 스크린샷처럼 특정 폴더에 한 번에 모두 내보낼 수 있습니다. 지금 다운로드하여 무료로 사용해 보세요! (30-day free trail)

export all shapes in current Excel by kutools


관련 문서:

최고의 오피스 생산성 도구

🤖 Kutools AI 도우미: 데이터 분석에 혁신을 가져옵니다. 방법: 지능형 실행   |  코드 생성  |  사용자 정의 수식 생성  |  데이터 분석 및 차트 생성  |  Kutools Functions 호출
인기 기능: 중복 찾기, 강조 또는 중복 표시   |  빈 행 삭제   |  데이터 손실 없이 열 또는 셀 병합   |   반올림(수식 없이) ...
슈퍼 LOOKUP: 다중 조건 VLOOKUP    다중 값 VLOOKUP  |   다중 시트 조회   |   퍼지 매치 ....
고급 드롭다운 목록: 드롭다운 목록 빠르게 생성   |  종속 드롭다운 목록   |  다중 선택 드롭다운 목록 ....
열 관리자: 지정한 수의 열 추가  |  열 이동  |  숨겨진 열의 표시 상태 전환  |  범위 및 열 비교 ...
추천 기능: 그리드 포커스   |  디자인 보기   |   향상된 수식 표시줄    통합 문서 & 시트 관리자   |  자동 텍스트 라이브러리   |  날짜 선택기   |  데이터 병합   |  셀 암호화/해독    목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터(굵게/이탤릭/취소선 필터 등) ...
15대 주요 도구 세트12 가지 텍스트 도구(텍스트 추가, 특정 문자 삭제, ...)  |  50+ 종류의 차트(간트 차트, ...)  |  40+ 실용적 수식(생일을 기반으로 나이 계산, ...)  |  19 가지 삽입 도구(QR 코드 삽입, 경로에서 그림 삽입, ...)  |  12 가지 변환 도구(단어로 변환하기, 통화 변환, ...)  |  7 가지 병합 & 분할 도구(고급 행 병합, 셀 분할, ...)  |  ... 등 다양
Kutools는 사용자가 선호하는 언어로 이용할 수 있습니다 – 영어, 스페인어, 독일어, 프랑스어, 중국어 및40개 이상의 언어 지원!

Kutools for Excel과 함께 엑셀 능력을 한 단계 끌어 올리고, 이전에 없던 효율성을 경험하세요. Kutools for Excel은300개 이상의 고급 기능으로 생산성을 높이고 저장 시간을 단축합니다.  가장 필요한 기능을 바로 확인하려면 여기를 클릭하세요...


Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 더욱 간편하게 만듭니다

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기를 활성화합니다.
  • 새 창 대신 같은 창의 새로운 탭에서 여러 파일을 열고 생성할 수 있습니다.
  • 생산성이50% 증가하며, 매일 수백 번의 마우스 클릭을 줄여줍니다!

모든 Kutools 추가 기능. 한 번에 설치

Kutools for Office 제품군은 Excel, Word, Outlook, PowerPoint용 추가 기능과 Office Tab Pro를 한 번에 제공하여 Office 앱을 활용하는 팀에 최적입니다.

Excel Word Outlook Tabs PowerPoint
  • 올인원 제품군 — Excel, Word, Outlook, PowerPoint 추가 기능 + Office Tab Pro
  • 설치 한 번, 라이선스 한 번 — 몇 분 만에 손쉽게 설정(MSI 지원)
  • 함께 사용할 때 더욱 효율적 — Office 앱 간 생산성 향상
  • 30일 모든 기능 사용 가능 — 회원가입/카드 불필요
  • 최고의 가성비 — 개별 추가 기능 구매 대비 절약