Note: The other languages of the website are Google-translated. Back to English

Excel의 드롭 다운 목록에서 선택한 값을 기반으로 매크로를 실행하는 방법은 무엇입니까?

엑셀에서는 커맨드 버튼을 클릭하여 매크로를 실행하는 것이 일반적인 작업이지만 드롭 다운 목록에서 선택한 값을 기반으로 매크로 코드를 실행 해 본 적이 있습니까? 즉, 드롭 다운 목록에서 하나의 항목을 선택하면 특정 매크로가 한 번에 트리거됩니다. 이 기사에서는이 작업을 해결하는 데 유용한 코드를 소개합니다.

VBA 코드로 드롭 다운 목록에서 선택한 값을 기반으로 매크로 실행


화살표 블루 오른쪽 거품 VBA 코드로 드롭 다운 목록에서 선택한 값을 기반으로 매크로 실행

이 작업을 직접 완료하는 방법은 없지만 다음 VBA 코드가 도움이 될 수 있습니다. 다음과 같이하십시오.

1. 먼저 필요에 따라 드롭 다운 목록을 만듭니다. 스크린 샷을 참조하세요.

드롭 다운 1에서 문서 실행 매크로

2. 그런 다음 사용하려는 드롭 다운이 포함 된 시트 탭을 마우스 오른쪽 버튼으로 클릭 한 다음 코드보기 상황에 맞는 메뉴 및 열린 애플리케이션 용 Microsoft Visual Basic 창에서 다음 코드를 복사하여 빈 모듈에 붙여 넣습니다.

VBA 코드 : 드롭 다운 목록에서 선택한 값에 따라 매크로 실행 :

Private Sub Worksheet_Change(ByVal Target As Range)
	If Not Intersect(Target, Range("E1")) Is Nothing Then
	    Select Case Range("E1")
	        Case "Insert Blank rows": Macro1
	        Case "Hide All Sheets": Macro2
            Case "Convert to Date": Macro3
	    End Select
	End If
	End Sub

드롭 다운 2에서 문서 실행 매크로

주의 사항: 위 코드에서 E1 셀에 드롭 다운 목록이 포함되어 있고 매크로 이름과 드롭 다운 목록 값을 필요에 맞게 변경합니다.

3. 그런 다음이 코드 창을 저장하고 닫습니다. 이제 드롭 다운 목록에서 빈 행 삽입 항목을 선택하면 Macro1이 트리거됩니다.


관련 기사 :

Excel에서 셀 값이 변경 될 때 매크로를 실행하는 방법은 무엇입니까?

Excel에서 셀 값을 기반으로 매크로를 실행하는 방법은 무엇입니까?

Excel에서 인쇄하기 전에 매크로를 자동으로 실행하는 방법은 무엇입니까?

Excel에서 하이퍼 링크를 클릭하여 매크로를 실행하는 방법은 무엇입니까?

통합 문서에서 시트를 선택할 때 매크로를 실행하는 방법은 무엇입니까?


최고의 사무 생산성 도구

Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.

  • 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.
kte 탭 201905

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

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
코멘트 (6)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
efectivamente funciona pero quiero ampilarlo en varias celdas, que 변수 debo cambiar?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
VBA 코드를 사용하여 Access에서 이 작업을 수행하는 방법이 있습니까? 감사해요
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요!

Al aplicarlo me sale un error de compilación: La declaración del procedimiento no 일치 con la descripción del evento o el procedimiento que tiene el mismo nombre. Quiere decir eso? 퀘 데보 캠비아/아레글라? 그라시아스
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
좋은 아침. 다음에 대한 드롭다운 메뉴에서 매크로를 수행할 수 있습니까? 매크로를 실행하고 드롭다운 메뉴에서 각 항목에 대해 분리된 시트를 저장하려면? 귀하의 경우 다음과 같아야 합니다.
1. 매크로를 실행한 다음 지정된 폴더에 저장된 "빈 행 삽입" 값으로 시트를 분리했습니다.
2. "모든 시트 숨기기:" 값으로 구분된 시트가 지정된 폴더에 저장됨
3. 지정된 폴더에 저장된 "날짜로 변환" 값으로 구분된 시트.
4. 이제 매크로가 완료되었습니다.


주로 매크로가 드롭다운 메뉴에서 선택 항목을 자동으로 변경한다는 점을 제외하고 이 모든 것을 설정할 수 있습니까?


감사


이반
이 댓글은 사이트의 중재자에 의해 최소화되었습니다


완벽하게 작동하는 첫 번째 코드개인 하위 Worksheet_Change (범위로 ByVal 대상)
If Not Intersect(Target, Range("D1")) is nothing then
케이스 범위 선택("D1")
         사례 "0.5": 절반
         사례 "1": 하나
         사례 "1.25": OneTwentyFive
선택 종료
END IF
최종 하위
두 번째 코드가 작동하지 않음(아래를 수정하십시오)
비공개 하위 변경(ByVal Target As Range)
If Not Intersect(Target, Range("D2")) is nothing then
케이스 범위 선택("D2")
         사례 "9.53": 나인포인트파이브쓰리
선택 종료
END IF
최종 하위
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
A co jeśli potrzebuję aby po uruchomieniu makra wszystkie listy rozwijane ustawiły się na jeden z wyborów z listy? W sumie odwrotnie do tego co jest w poście. Czy istnieje na to łatwiejszy sposób?
아직 코멘트가 없습니다
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치

Follow Us

저작권 © 2009 - WWW.extendoffice.com. | 판권 소유. 에 의해 구동 ExtendOffice. | | 사이트 맵
Microsoft 및 Office 로고는 미국 및 / 또는 기타 국가에서 Microsoft Corporation의 상표 또는 등록 상표입니다.
Sectigo SSL로 보호