메인 컨텐츠로 가기

Excel에서 명령 단추 이름을 동적으로 만드는 방법은 무엇입니까?

이 기사에서는 지정된 셀 값을 변경하여 명령 단추의 이름을 동적으로 변경하는 방법에 대해 설명합니다. 예를 들어 A1 셀의 값이 "test"로 변경되면 특정 Command 단추의 이름이 자동으로 "test"로 변경됩니다.

VBA 코드로 셀 값으로 명령 단추 이름을 동적으로 만들기


VBA 코드로 셀 값으로 명령 단추 이름을 동적으로 만들기

다음 VBA 코드는 워크 시트의 지정된 셀 값을 사용하여 명령 단추의 이름을 동적으로 만드는 데 도움이 될 수 있습니다. 다음과 같이하십시오.

1. 클릭 개발자 > 끼워 넣다 > 명령 단추 (ActiveX 컨트롤) 워크 시트에 명령 단추를 삽입합니다. 스크린 샷보기 :

2. 명령 버튼을 삽입 한 후 시트 탭을 마우스 오른쪽 버튼으로 클릭하고 코드보기 아래 스크린 샷과 같이 오른쪽 클릭 메뉴에서 :

3. 오프닝에서 응용 프로그램 용 Microsoft Visual Basic 창에서 VBA 코드 아래에 복사하여 붙여 넣으십시오.

VBA 코드 : 셀 값을 사용하여 명령 단추 이름을 동적으로 만들기

Dim xStr As String
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xShapeRg As ShapeRange
    On Error Resume Next
    If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
        Me.CommandButton1.Caption = Target.Text
        Set xShapeRg = ActiveSheet.Shapes.Range(xStr)
        If xShapeRg Is Nothing Then Set xShapeRg = ActiveSheet.Shapes.Range("CommandButton1")
        Application.EnableEvents = False
        xShapeRg.Select
        Application.EnableEvents = True
        Selection.Name = Target.Text
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If (Not Intersect(Target, Range("A1")) Is Nothing) And Target.Text <> "" Then
        xStr = Target.Text
    End If
End Sub

주의 사항: 코드에서 CommandButton1은 이름을 동적으로 만들려는 버튼의 이름이고, A1은 자동으로 버튼 이름에 대한 값을 참조할 셀입니다.

4. 누르세요 다른 + Q 나가는 열쇠 응용 프로그램 용 Microsoft Visual Basic 창.

5. 클릭하여 디자인 모드를 끕니다. 개발자 > 디자인 모드.

이제부터 명령 단추의 이름은 워크시트의 지정된 셀 값에 따라 동적으로 변경됩니다.

아래 스크린샷과 같이 A1 셀의 값이 변경되면 명령 단추의 이름도 자동으로 동일한 값으로 변경됩니다.


관련 기사:

최고의 사무 생산성 도구

🤖 Kutools AI 보좌관: 다음을 기반으로 데이터 분석을 혁신합니다. 지능형 실행   |  코드 생성  |  사용자 정의 수식 만들기  |  데이터 분석 및 차트 생성  |  Kutools 기능 호출...
인기 기능: 중복 항목 찾기, 강조 표시 또는 식별   |  빈 행 삭제   |  데이터 손실 없이 열이나 셀 결합   |   수식없이 반올림 ...
슈퍼 조회: 다중 기준 VLookup    다중 값 VLookup  |   여러 시트에 걸친 VLookup   |   퍼지 조회 ....
고급 드롭다운 목록: 드롭다운 목록을 빠르게 생성   |  종속 드롭다운 목록   |  다중 선택 드롭 다운 목록 ....
열 관리자: 특정 개수의 열 추가  |  열 이동  |  Toggle 숨겨진 열의 가시성 상태  |  범위 및 열 비교 ...
특색 지어진 특징: 그리드 포커스   |  디자인보기   |   큰 수식 바    통합 문서 및 시트 관리자   |  리소스 라이브러리 (자동 텍스트)   |  날짜 선택기   |  워크 시트 결합   |  셀 암호화/해독    목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터 (굵게/기울임꼴/취소선 필터링...) ...
상위 15개 도구 세트12 본문 도구 (텍스트 추가, 문자 제거,...)   |   50+ 거래차트 유형 (Gantt 차트,...)   |   40+ 실용 방식 (생일을 기준으로 나이 계산,...)   |   19 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입,...)   |   12 매출 상승 도구 (숫자를 단어로, 환율,...)   |   7 병합 및 분할 도구 (고급 결합 행, 셀 분할,...)   |   ... 그리고 더

Excel용 Kutools로 Excel 기술을 강화하고 이전과는 전혀 다른 효율성을 경험해 보세요. Excel용 Kutools는 생산성을 높이고 시간을 절약하기 위해 300개 이상의 고급 기능을 제공합니다.  가장 필요한 기능을 얻으려면 여기를 클릭하십시오...

상품 설명


Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Can anyone suggest how I would extend the VBA to additionally assign a macro to the command button so clicking the command button would execute a macro associated with the command button name? For example, after renaming the command button to "XYZ", also assign the macro named "XYZ" to the command button click event. Thank you for any help.
This comment was minimized by the moderator on the site
Hi sam,
Please try as follows.
1. Turn on the Design Mode by clicking Developer > Design Mode.
2. Right click the command button and select View Code in the context menu;
3. Assign your macro between line Private Sub CommandButton1_Click() and End Sub;
4. Turn off the Design Mode

Hope I can help.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations