Tassos хотел бы, чтобы Excel воспроизводил аудиофайл, когда значение в определенной ячейке превышает пороговое значение. Например, если значение в ячейке превышает 999, он хочет, чтобы воспроизводился конкретный звуковой файл.

В Excel нет встроенного способа сделать это (хотя это было бы интересным дополнением к функциям условного форматирования Excel). Однако вы можете воспроизвести звуковой файл, используя макрос для вызова Windows API.

Вам нужно начать с размещения кода в объекте Sheet для книги. (Щелкните правой кнопкой мыши вкладку рабочего листа и выберите «Просмотреть код» в контекстном меню.) Объявите функцию «playsound», используя следующий код:

Private Declare Function PlaySound Lib "winmm.dll" _   Alias "PlaySoundA" (ByVal lpszName As String, _   ByVal hModule As Long, ByVal dwFlags As Long) As Long

Const SND_SYNC = &H0     Const SND_ASYNC = &H1     Const SND_FILENAME = &H20000

Затем вы можете создать небольшой небольшой макрос, который будет воспроизводить звуковой файл. Предполагая, что звуковой файл находится в том же каталоге, что и книга, следующий код будет работать. (Вы должны изменить код так, чтобы он содержал правильное имя файла и местоположение.)

Sub PlayWAV()

WAVFile = ThisWorkbook.Path & "\MyAudioFile.wav"

Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)

End Sub

Наконец, установите критерии, когда файл должен воспроизводиться. В этом случае вы хотите, чтобы звуковой файл воспроизводился всякий раз, когда значение в целевой ячейке превышает пороговое значение 999. Следующее будет проверять это условие в ячейке C5 и, если это необходимо, воспроизводить звуковой файл:

Private Sub Worksheet_Change(ByVal Target As Range)

Threshold = 999     If Range("C5").Value > Threshold Then PlayWAV End Sub

Теперь, когда значение в ячейке C5 изменяется и превышает 999, аудиофайл будет воспроизводиться один раз. Если значение меньше 999, ничего не воспроизводится. Если значение изменится на другое значение, превышающее 999, звуковой файл будет воспроизводиться снова.

Дополнительные идеи по воспроизведению аудиофайлов можно найти на следующих сайтах:

http://www.j-walk.com/ss/excel/tips/tip87.htm http://www.cpearson.com/excel/PlaySound.aspx

Вы также должны отметить, что вы можете заставить Excel воспроизводить системный звук с помощью проверки данных. Просто установите критерии проверки (описанные в других вопросах ExcelTips), а затем на вкладке «Ошибка» укажите, хотите ли вы, чтобы Excel останавливал, предупреждал или информировал пользователя. Когда в ячейку вводится значение, не соответствующее критериям, отображается диалоговое окно и слышен системный звук.

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (6559) применим к Microsoft Excel 97, 2000, 2002 и 2003.