Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Да, код изменил на правильный, сейчас вроде все работает, можете пользоваться кому надо. Пока наблюдаю, может где-то какие-то ошибки вылезут. Если что - отпишусь. Всем Спасибо огромное за участие!
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Короче, из всего у меня пока работает только предложенный skais675 вариант, методом тыка я его переделал в то, что ниже:
Код
Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long
Private Sub Worksheet_Change(ByVal Target As Range)
        For i = 1 To Sheets(2).Cells(Sheets(2).Rows.Count, "O").End(xlUp).Row
                 If Sheets(2).Cells(i, 14) > Sheets(2).Cells(i, 15) Then mciExecute ("Play C:\Windows\Media\tada.wav")
        Next
        Application.Calculate
        Application.Calculation = xlCalculationManual
End Sub

Пришлось перенести формулы из столбца N в столбец O, и столбец N равен столбцу О. В таком раскладе макрос адекватно воспринимает информацию и реагирует на появление единичек сигналом.

Но при этом возникают ошибки в копировании информации на листе и в работе формул. Может кто-то подскажет что именно и как заменить, откорректировать в этом коде, чтобы работало корректно.

Изменено: meller - 02.07.2017 14:52:46
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Юрий М, у меня почему-то выдает ошибку вот здесь СУММПРОИЗВ((N:N=1), в предыдущей версии файла, где ограниченный диапазон столбца все работает, а в третьей версии #ЧИСЛО!
Меняю формулу на такую: =СУММПРОИЗВ((N1:N20=1)*(СТРОКА(N1:N20)))+СУММ(N:N) и все снова работает
Изменено: meller - 02.07.2017 08:35:34
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Я уже третий день с этим вопросом мучаюсь, мне скоро сны сумасшедшие будут сниться. Я прошу прощения, у меня уже пятый час утра, надо поспать..
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Что-то не работает...
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
skais675,да, не открывается
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Юрий М написал:
Вот реализация моего варианта. Первый раз нужно нажать на кнопку (это можно потом на событие открытия книги назначить), а дальше оно само ))
Вроде работает... Но, как я понял, оно работает только с определенным количеством ячеек?
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
skais675, у меня 2003 ((
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Hugo написал:
А сколько всего ячеек нужно отслеживать максимум? Миллион?
Количество ячеек меняется. Пока в пределах 100-120.
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
skais675 написал:
Получается нужно где-то хранить предыдущую информацию или как-то организовать так, чтобы было что с чем сравнивать а именно переход с 0 на 1, и тогда оповещать.
Это в макрос можно зашить? Чтобы он копировал столбец N:N после каждого сравнения... но тогда нужно выбирать какой-то временной промежуток для такого сравнения. Можно конечно сделать, скажем, минуту... Но, мне кажется, решение окажется намного проще, по-моему мы все усложняем
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Юрий М написал:
В том то и дело... Да даже такой вариант: одна появилась, а одна исчезла.
Да, вот надо, чтобы именно на единицу реагировал
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Hugo написал:
Если знать, что изменяться эти единицы могут только по-одной, тогда всё сильно упрощается - можно действительно только их подсчитывать, и кричать только если количество увеличилось.
Ну а работает всё это дело... Вы название файла видели?
Единицы появляются по одной, но существует вероятность, хоть и небольшая, что получится одновременное появление двух-трех единиц. Название файла видел, но, честно признаться, текстбокс понятие для меня незнакомое... я не специалист ) точнее специалист, но совсееем в другой сфере )
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Юрий М написал:
уточните, если появилась единица - понятно, а если она исчезла?
Макрос должен оповещать только о появлении единицы - это единственная его задача - известить, что событие наступило
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Hugo написал:
- так там ведь написано!
=СУММПРОИЗВ((N1:N9=1)*(СТРОКА(N1:N9))) вот эта формула что дает?
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
kavaka08,н-да, засада, когда меняешь руками - все звучит во всех ячейках, но дело в том, что в них вычисляют формулы, и вот результаты этих вычислений - нужные нам единицы - не улавливает макрос...

может что-то мешает? формулы во всех ячейках такого типа:
Код
=ЕСЛИ(ЕОШИБКА(ЕСЛИ(J2>G2/3;"0";ЕСЛИ(K2>F2/1.3;"0";"1")));0;ЕСЛИ(J2>G2/3;"0";ЕСЛИ(K2>F2/1.3;"0";"1")))
Изменено: meller - 01.07.2017 20:20:29
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Цитата
Hugo написал:
У меня tada не звучит, не стал менять код - просто следите за месиджбоксом, можете вместо него поставить свой звук.
P.S. файл удалил, ибо ниже есть версия в xls
Не совсем понял... Что значит детектерить пересчет формулы и для какой это цели... Tada действительно не звучит, но у меня не получается визуально следить, в том-то и дело. И вот этот месседжбокс, это он в итоге что показывает?
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Hugo, у меня 2003 - не открывается файл
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
kavaka08,Спасибо Вам огромное! Все работает отлично! Коротко и просто, как  и предполагал. Благодарю! Посмотрим как поведет себя в работе.
Цитата
Изменено: meller - 01.07.2017 18:56:09
Звуковое оповещение макросом при изменении значений в ячейках столбца, Нужная вещь для повседневной работы
 
Уважаемые специалисты!
Не могу сказать, что я тупой, но показался  себе таким, когда столкнулся с вашей профессиональной сферой. Нужно  написать простенький макрос для Excel 2003. Приложил все усилия, чтобы  сделать это самостоятельно, перелопатил тонны информации, но, видимо,  это не мое. Ничего не могу поделать и вынужден обратиться к вам. Итак,  нужен простой макрос. Макрос должен постоянно проверять один столбец N:N  - 14-й по счету. Таблица заполнена постоянно меняющимися данными,  меняющимися потому, что на другом листе подгружаемая с сайта информация.  Эти данные распределяются по таблице, рассчитываются различными  формулами и т.д. В столбце N:N тоже стоят формулы, и значения в ячейках  могут быть 0 и 1. В большинстве своем там стоят нули, но иногда  появляются единицы. Так вот, о появление такой единицы макрос должен  оповещать звуком. Т.е., проверка столбца должна производиться постоянно.  Данные обновляются раз в минуту.
Подобная тема обсуждалась здесь: http://www.planetaexcel.ru/forum/index.php?FID=8&PAGE_NAME=read&TID=5846
Но, это не совсем то. Макрос такого типа для одной ячейки мне подошел и работает:
Код
Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long 
  
Private Sub Worksheet_Change(ByVal Target As Range) 
 If [N2] <> "" And [N2] = [N1] Then 
   mciExecute ("Play C:\Windows\Media\tada.wav") 
 End If 
End Sub 

Но все мои попытки разобраться с остальными ячейками в столбце N:N  терпят сокрушительный крах. В ячейке N1 у меня стоит единица, как  образец для макроса, ее я могу убрать, если понадобится. Понимаю, что  макрос должен быть предельно простой, но моих умственных способностей не  хватает, к сожалению, решить этот вопрос. Помогите, пожалуйста!
Изменено: meller - 01.07.2017 18:24:57
Страницы: 1
Наверх