Excel에서 조건이 충족될 경우 소리를 재생하는 방법은 무엇입니까?
Excel에서는 필요에 따라 조건을 충족하도록 셀의 서식을 지정하고 강조 표시하기 위해 조건부 서식 기능을 사용할 수 있습니다. 하지만 때때로 조건이 충족되면 소리를 재생하고 싶을 수도 있습니다. 예를 들어, A1 셀 값이 300보다 크면 소리가 재생되기를 원합니다. Excel은 이 기능을 지원하지 않으므로, 이번 글에서는 이 작업을 해결하기 위한 VBA 코드 몇 가지를 소개하겠습니다.
VBA 코드를 사용하여 기본 시스템 경고음 소리를 셀 값에 따라 재생하기
VBA 코드를 사용하여 사용자 정의 소리를 셀 값에 따라 재생하기
특정 열에서 셀 값이 변경될 경우 VBA 코드를 사용하여 소리 재생하기
VBA 코드를 사용하여 기본 시스템 경고음 소리를 셀 값에 따라 재생하기
다음은 특정 조건이 충족되었을 때 기본 시스템 경고음을 재생하는 유용한 코드입니다. 아래 단계를 따르세요:
1. ALT + F11 키를 누르면 Microsoft Visual Basic for Applications 창이 열립니다.
2. 삽입 > 모듈을 클릭하고 모듈 창에 다음 코드를 붙여넣습니다.
VBA 코드: 셀 값에 따라 기본 시스템 경고음 재생하기:
Function BeepMe() As String
Beep
BeepMe = ""
End Function
3. 그런 다음 이 코드 창을 저장하고 닫고, 워크시트로 돌아가서 =IF(A1>300,BeepMe(),"") 공식을 원하는 소리를 재생할 값을 포함한 셀 옆의 빈 셀에 입력한 후 Enter 키를 누릅니다. 공식 셀에는 아무 것도 표시되지 않습니다. 스크린샷 참조:
4. 이제 A1 셀에 입력된 값이 300보다 크면 기본 시스템 경고음이 재생됩니다.
VBA 코드를 사용하여 사용자 정의 소리를 셀 값에 따라 재생하기
기본 시스템 경고음 대신 다른 소리를 재생하려는 경우에도 VBA 코드를 사용할 수 있습니다.
1. ALT + F11 키를 누르면 Microsoft Visual Basic for Applications 창이 열립니다.
2. 삽입 > 모듈을 클릭하고 모듈 창에 다음 코드를 붙여넣습니다.
VBA 코드: 셀 값에 따라 특정 소리 재생하기:
#If Win64 Then
Private Declare PtrSafe Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As LongPtr, ByVal dwFlags As Long) As Boolean
#Else
Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Boolean
#End If
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
Function SoundMe() As String
'Updateby Extendoffice 20161223
Call PlaySound("c:\windows\media\Speech On.wav", _
0, SND_ASYNC Or SND_FILENAME)
SoundMe = ""
End Function
3. 그런 다음 이 코드 창을 저장하고 닫고, 워크시트로 돌아가서 =IF(A1>300,SoundMe(),"") 공식을 원하는 소리를 재생할 값을 포함한 셀 옆의 빈 셀에 입력한 후 Enter 키를 누릅니다. 공식 셀에는 아무 것도 표시되지 않습니다. 스크린샷 참조:
4. 이제부터 A1 셀에 300보다 큰 값이 입력되면 특정 소리가 즉시 재생됩니다.
참고: 위의 코드에서 c:\windows\media\ 파일 경로에서 필요한 사운드 wav 파일을 변경할 수 있습니다. 스크린샷 참조:
특정 열에서 셀 값이 변경될 경우 VBA 코드를 사용하여 소리 재생하기
특정 열에서 셀 값이 변경될 경우 소리를 재생하려면 다음 VBA 코드를 적용할 수 있습니다.
1. 값이 변경될 때 소리를 재생하려는 열의 시트 탭을 마우스 오른쪽 버튼으로 클릭하고, 컨텍스트 메뉴에서 코드 보기(View Code)를 선택한 다음 열린 Microsoft Visual Basic for Applications 창에서 다음 코드를 복사하여 빈 모듈에 붙여넣습니다.
VBA 코드: 열에서 셀 값이 변경될 경우 소리 재생하기:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20161223
Dim xCell As Range
On Error Resume Next
If Target.Columns.Count = 1 Then
If Intersect(Target, Columns(3)) Is Nothing Then
Exit Sub
Else
For Each xCell In Columns(3)
On Error Resume Next
If (xCell.Value = Target.Value) And (xCell.Value <> "") Then
Beep
Exit For
End If
Next
End If
End If
End Sub
참고: 위의 코드에서 Columns(3) 스크립트의 숫자 3은 값이 변경될 경우 소리를 재생하려는 열 번호입니다.
2. 그런 다음 이 코드 창을 저장하고 닫습니다. 이제 세 번째 열에서 셀 값이 변경되면 기본 시스템 경고음이 재생됩니다.
최고의 오피스 생산성 도구
? | Kutools AI Aide: 지능형 실행, 코드 생성, 사용자 정의 수식 작성, 데이터 분석 및 차트 생성, Kutools 함수 호출을 기반으로 데이터 분석 혁신… |
인기 기능: 중복 찾기, 강조 또는 식별 | 빈 행 삭제 | 데이터 손실 없이 열 또는 셀 결합 | 수식 없이 반올림 ... | |
슈퍼 LOOKUP: 다중 조건 VLookup | 다중 값 VLookup | 다중 시트 조회 | 퍼지 매치 .... | |
고급 드롭다운 목록: 빠르게 드롭다운 목록 만들기 | 종속 드롭다운 목록 | 다중 선택 드롭다운 목록 .... | |
열 관리자: 특정 개수의 열 추가 | 열 이동 | 숨겨진 열의 가시성 상태 전환 | 범위 및 열 비교 ... | |
주요 기능: 그리드 포커스 | 디자인 보기 | 향상된 수식 표시줄 | 통합 문서 및 시트 관리자 | 자동 텍스트 라이브러리 (Auto Text) | 날짜 선택기 | 데이터 병합 | 셀 암호화/해독 | 목록으로 이메일 보내기 | 슈퍼 필터 | 특수 필터 (굵은 글꼴/이탤릭체/취소선 필터링...) ... | |
최고의 15가지 도구 모음: 12개의 텍스트 도구 (텍스트 추가, 특정 문자 삭제, ...) | 50+ 차트 유형 (간트 차트, ...) | 40+ 실용적인 수식 (생일을 기반으로 나이 계산, ...) | 19개 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입, ...) | 12개 변환 도구 (단어로 변환하기, 통화 변환, ...) | 7개 병합 및 분할 도구 (고급 행 병합, 셀 분할, ...) | ... 그리고 더 많은 기능들 |
Kutools for Excel로 엑셀 스킬을 강화하고 지금까지 경험하지 못한 효율성을 체험하세요. Kutools for Excel은 생산성을 향상시키고 시간을 절약할 수 있는 300개 이상의 고급 기능을 제공합니다. 가장 필요한 기능을 얻으려면 여기를 클릭하세요...
Office Tab은 탭 인터페이스를 Office에 제공하여 작업을 훨씬 쉽게 만듭니다.
- Word, Excel, PowerPoint에서 탭 편집 및 읽기를 활성화하세요.
- 새 창 대신 동일한 창의 새 탭에서 여러 문서를 열고 생성하세요.
- 생산성을 50% 향상시키고 매일 수백 번의 마우스 클릭을 줄입니다!