Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Отправка e-mail уведомлений при изменении любой ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Отправка e-mail уведомлений при изменении любой ячейки
SlavikBovkun Дата: Четверг, 03.03.2016, 16:57 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Задача - нужно написать код для отправки e-mail уведомлений при изменении любой ячейки в таблице.

Есть примитивная функция:
[vba]
Код
function myFunction() {
  MailApp.sendEmail('email@email.ru','Изменения в таблице ЗАКАЗЫ','В таблицу внесены изменения, необходимо проверить');
}
[/vba]

Сюда необходимо добавить ссылку на ячейку с текстом изменения и указать последнего редактора.
Помогите пожалуйста добавить парку строчек кода.


Сообщение отредактировал Serge_007 - Суббота, 05.03.2016, 08:03
 
Ответить
СообщениеЗадача - нужно написать код для отправки e-mail уведомлений при изменении любой ячейки в таблице.

Есть примитивная функция:
[vba]
Код
function myFunction() {
  MailApp.sendEmail('email@email.ru','Изменения в таблице ЗАКАЗЫ','В таблицу внесены изменения, необходимо проверить');
}
[/vba]

Сюда необходимо добавить ссылку на ячейку с текстом изменения и указать последнего редактора.
Помогите пожалуйста добавить парку строчек кода.

Автор - SlavikBovkun
Дата добавления - 03.03.2016 в 16:57
Gustav Дата: Суббота, 05.03.2016, 02:13 | Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
У меня получилось вот так:
[vba]
Код
function myFunction() {
  
    var ss = SpreadsheetApp.getActiveSpreadsheet();
  
    MailApp.sendEmail("email@email.ru",
                      "Изменения в таблице ЗАКАЗЫ",
                      "В таблицу внесены изменения, необходимо проверить.\n" +
                      "Ячейка " + ss.getActiveCell().getA1Notation() +
                      " была отредактирована пользователем " + Session.getActiveUser());
}
[/vba]В проекте функцию надо будет зарегистрировать как триггер по меню: Ресурсы \ Триггеры текущего проекта. И там myFunction, Из таблицы, Изменение.

C помощью же стандартной предопределенной function onEdit(e) отправить письмо у меня не получилось.


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Суббота, 05.03.2016, 02:14
 
Ответить
СообщениеУ меня получилось вот так:
[vba]
Код
function myFunction() {
  
    var ss = SpreadsheetApp.getActiveSpreadsheet();
  
    MailApp.sendEmail("email@email.ru",
                      "Изменения в таблице ЗАКАЗЫ",
                      "В таблицу внесены изменения, необходимо проверить.\n" +
                      "Ячейка " + ss.getActiveCell().getA1Notation() +
                      " была отредактирована пользователем " + Session.getActiveUser());
}
[/vba]В проекте функцию надо будет зарегистрировать как триггер по меню: Ресурсы \ Триггеры текущего проекта. И там myFunction, Из таблицы, Изменение.

C помощью же стандартной предопределенной function onEdit(e) отправить письмо у меня не получилось.

Автор - Gustav
Дата добавления - 05.03.2016 в 02:13
SlavikBovkun Дата: Воскресенье, 06.03.2016, 12:55 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Gustav, спасибо большое!
Всё работает почти как нужно.
А подскажи пожалуйста, возможно ли отображать не просто ячейку, а ещё и содержимое которое было вписано?
 
Ответить
СообщениеGustav, спасибо большое!
Всё работает почти как нужно.
А подскажи пожалуйста, возможно ли отображать не просто ячейку, а ещё и содержимое которое было вписано?

Автор - SlavikBovkun
Дата добавления - 06.03.2016 в 12:55
Gustav Дата: Воскресенье, 06.03.2016, 15:09 | Сообщение № 4
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
ещё и содержимое которое было вписано?

Да, конечно. В контексте нашей функции можно так к нему обратиться:
[vba]
Код
ss.getActiveCell().getValue()
[/vba]


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
ещё и содержимое которое было вписано?

Да, конечно. В контексте нашей функции можно так к нему обратиться:
[vba]
Код
ss.getActiveCell().getValue()
[/vba]

Автор - Gustav
Дата добавления - 06.03.2016 в 15:09
SlavikBovkun Дата: Воскресенье, 06.03.2016, 17:38 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2013
Gustav, большое спасибо за помощь!

Ты меня очень выручил hands
 
Ответить
СообщениеGustav, большое спасибо за помощь!

Ты меня очень выручил hands

Автор - SlavikBovkun
Дата добавления - 06.03.2016 в 17:38
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!