Макросы в Excel !

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Аватара пользователя
Aent
Сообщения: 1129
Зарегистрирован: 01 окт 2006, 14:52
Откуда: Saratov,Russia
Контактная информация:

Попробуйте вот так:
В модуль кода поместите

Код: Выделить всё

Option Explicit
Public Declare Function sndPlaySound32 _
    Lib "winmm.dll" _
    Alias "sndPlaySoundA" ( _
        ByVal lpszSoundName As String, _
        ByVal uFlags As Long) As Long
Public Sub TestSnd()
     sndPlaySound32 ThisWorkbook.Path & "\snd.wav",0&
End TestSnd
Предполагается что файл snd.wav лежит в папке с макросом
Андрей Энтелис,
aentelis.livejournal.com
BigGonschik
Сообщения: 11
Зарегистрирован: 18 мар 2009, 20:44

Добрый день. Aent я помещаю ваш код в модуль, и ВБА выделяет красным цветом "End TestSnd". почему не знаю, но сохраняю и когда хочу запустить в Екселе то звук начинает воспроизведение и вмиг выкидывает сообщение "Сan`t execute code in break mode"

Что такое, столько людей мне давали кода программ, советы но у меня не получается.
А может картинку легче открыть чем звуковой файл :rolleyes: ??
Если у меня в ячейке К10 будет значение больше 10 чтобы открывало картинку/анимацию? а то со звуком уже так долго и не че не получается!
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Надо

End Sub
Аватара пользователя
Aent
Сообщения: 1129
Зарегистрирован: 01 окт 2006, 14:52
Откуда: Saratov,Russia
Контактная информация:

:( Позор на мои седины. Описка. Конечно End Sub
В кои то веки не скопипастил код из VBE а набрал сразу в окне...
Андрей Энтелис,
aentelis.livejournal.com
BigGonschik
Сообщения: 11
Зарегистрирован: 18 мар 2009, 20:44

УРАААА!!! Есть работает!!! Спасибо всем кто помагал, Aent а также Naeel Maqsudov. Звук воспроизводитса.
А будет возможность добавить в макрос што ниже, ету голосовую функцию, тоисть штоб одновременно в макросе била ето функция и она включалась только если ячейка k10 будет иметь значение больше скажем 10?
тоисть, если я включу макрос и значение в ячейке било больше - то звук воспроизводиться, а меньше 10 то не воспроизводиться???
Возможно такое или нет???
------------
Private Sub CommandButton1_Click()
Dim row As Range, sh As Worksheet, k As Variant, N As Long
Set sh = Application.ActiveWorkbook.Sheets("Лист2")
N = Application.WorksheetFunction.Count(sh.Columns(1)) + 5
For Each row In Application.ActiveWorkbook.Sheets("Лист1").Cells(15, 11).CurrentRegion.Rows
V = row.Cells(1, 11).Value
If IsNumeric(V) And V >= 1 Then row.Copy sh.Cells(N, 2): N = N + 1
Next
Set sh = Nothing
Unload Me
End Sub
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Привет. А што такое невозможно сделать, штоб в макрос кинуть ету процедуру??
Shats
Сообщения: 1
Зарегистрирован: 29 мар 2010, 21:42

нужен макрос который делит значение одной ячейки на другое, и если их отглшение больше че 1,3 ставит заливку ячейки красным, если от 0.9 до 1.3 то желтым, еслт меньше 0.9 то зеленым.... помогите пожалуйста (это все должно выполняться не над конкретными ячейками а над всем документом - предположим С1/H1, C2/H2, Cn/Hn)
Ответить