엑셀 VBA를 활용하여 셀 값이 조건을 벗어나면 경고음(Beep)을 울리는 방법


엑셀에서 특정 값에 대해 다양한 방법으로 눈에 뛸수 있도록 데이터를 처리할 수 있습니다. 엑셀의 조건부 서식을 사용하여 해당 값에 따라 셀의 색상을 달리하거나 이미지 등을 표시할 수 있습니다.

이러한 시각적 효과와 별도로 경고음(Beep)을 울리도록 해서 소리를 이용한 특정 값에 대해 알림을 확인할 수 있는 방법도 있습니다.

셀에 데이터를 입력할 때 셀 값이 조건 범위를 벗어나거나 셀의 합계가 지정한 조건 값을 벗어날 때 경고음과 같은 효과음을 준다면 잘못 입력한 데이터에 대해 보다 빨리 확인을 할 수 있게 됩니다.

엑셀에서 경고음을 사용하기 위해서는 VBA(Microsoft Visual Basic for Application)를 이용하여 경고음(Beep)을 울리는 모듈(Function)을 만들고 엑셀 시트에 해당 모듈을 사용하는 수식을 지정해 줌으로써 구현이 가능합니다.

이번 글에서는 엑셀 VBA를 활용하여 셀 값이 조건을 벗어나면 경고음(Beep)을 울리는 방법에 대해 알아보겠습니다.

엑셀 VBA에서 경고음(알람)을 울리는 모듈(Function) 만들기

– Visual Basic을 코드를 작성하기 위해서는 [개발 도구] 리본이 엑셀에 추가되어 있어야 합니다.

[개발 도구]를 추가하는 방법은 엑셀에서 VBA(매크로)를 처음으로 시작할 때 참고하세요. 글을 참조하세요.

1. 리본 메뉴의 [개발 도구]를 선택하고 [Visual Basic]를  클릭해서 Microsoft Visual Basic for Application을 실행합니다.

2. 메뉴에서 [삽입]을 선택하고 [모듈]을 클릭해서 새로운 모듈을 만듭니다.

엑셀 VBA를 활용하여 셀 값이 조건을 벗어나면 경고음(Beep)을 울리는 방법 - 모듈 추가

3. 새로운 모듈이 하나 만들어지면 효과음(Beep)을 울리는 아래 코드를 삽입합니다. (MsgBox는 생략 가능합니다)

Function AlarmBeep() As String
 
    ‘경고음(알람)소리
    Beep
    
    AlarmBeep = “”
    
    MsgBox (“오류발생”)
 
End Function
 

4. VBA 코드를 입력했으면 [저장]을 눌러 저장합니다.

엑셀 VBA에서 경고음(알람)을 울리는 모듈(Function) 만들기 - VBA Function 작성

5. 저장할 때 파일 형식을 [Excel 매크로 사용 통합 문서 (*.xlsm)]을 선택하고 저장해 줍니다.

6. 엑셀 시트에서 VBA 모듈을 제대로 사용하기 위해서는 매크로 사용 통합 문서로 저장해야 합니다.

엑셀 VBA에서 경고음(알람)을 울리는 모듈(Function) 만들기 - 매크로 사용 통합 문서 저장

7. 경고음(알림)을 울리기 위한 효과음(Beep) 작업은 이렇게만 해주면 끝입니다.

VBA의 경고음 울리는 함수를 엑셀에서 사용하는 방법 (Trigger 방법)

1. 엑셀 시트에서 효과음(경고음)이 제대로 울리는지 확인을 해 보겠습니다.

2. 아무 셀에나 좀 전에 만든 모듈의 함수 =AlarmBeep()를 수식으로 입력하고 엔터를 칩니다. 그럼 윈도우의 기본 효과음이 들리게 됩니다. 당연히 스피커나 이어폰이 켜져 있어야 하고 볼륨도 켜져 있어야 합니다.

VBA의 경고음 울리는 모듈을 엑셀에서 사용하는 방법 (Trigger 방법) - VBA 정상 작동 확인

3. 정상적으로 효과음(경고음)이 들린다면 이제 조건에 따라 효과음(경고음)이 울리도록 해 보겠습니다.

4. 예제는 B열의 비율 합계가 100을 초과하면 경고음(알람)이 울리도록 한 예제 입니다.

5. 아무 셀에나 =IF(B6 > 100, AlarmBeep(), “”) 라고 입력해 줍니다.
 => B6 셀 값이 100을 초과하면 AlarmBeep 함수를 실행하고, 100이하이면 공백을 표시하라는 의미입니다.
공백을 주는 이유는 해당 셀에 아무런 표시도 하지 않기 위해서 입니다.(효과음을 사용하기 위해 임시로 사용하는 셀입니다.)

엑셀 VBA를 활용하여 셀 값이 조건을 벗어나면 경고음(Beep)을 울리는 방법

6. B2:B5의 합계가 100을 초과하면 경고음(Beep)과 함께 메시지박스가 나타나게 됩니다.

VBA의 경고음 울리는 모듈을 엑셀에서 사용하는 방법 (Trigger 방법) - VBA 효과음 결과





이 글이 도움이 되었기를 바랍니다. ^-^


답글 남기기