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

Вход

Регистрация

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

 

= Мир MS Excel/Как макросом вернуть предыдущие значения ячеек с формулами - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как макросом вернуть предыдущие значения ячеек с формулами (Макросы/Sub)
Как макросом вернуть предыдущие значения ячеек с формулами
Dmitriymifns Дата: Четверг, 30.11.2017, 10:04 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Помогите, пожалуйста, с макросом. Есть макрос, который возвращает предыдущие значения столбцов A, C и G при их изменении (с помощью ввода значений вручную). А нужно чтобы макрос возвращал предыдущие значения этих столбцов при пересчете значений (если в них будут введены формулы).
К сообщению приложен файл: ___A-C__G__.xls(33Kb)
 
Ответить
СообщениеПомогите, пожалуйста, с макросом. Есть макрос, который возвращает предыдущие значения столбцов A, C и G при их изменении (с помощью ввода значений вручную). А нужно чтобы макрос возвращал предыдущие значения этих столбцов при пересчете значений (если в них будут введены формулы).

Автор - Dmitriymifns
Дата добавления - 30.11.2017 в 10:04
_Boroda_ Дата: Четверг, 30.11.2017, 10:43 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11852
Репутация: 4911 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Что-то в этом роде
[vba]
Код
Private Sub Worksheet_Calculate()
    diap_ = "G1:G" & Range("G" & Rows.Count).End(3).Row
    Application.EnableEvents = 0
    Application.Undo
    ar = Range(diap_)
    Application.Undo
    Range(diap_).Offset(, 1) = ar
    Application.EnableEvents = 1
End Sub
[/vba]
К сообщению приложен файл: _A-C_G_1.xls(38Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЧто-то в этом роде
[vba]
Код
Private Sub Worksheet_Calculate()
    diap_ = "G1:G" & Range("G" & Rows.Count).End(3).Row
    Application.EnableEvents = 0
    Application.Undo
    ar = Range(diap_)
    Application.Undo
    Range(diap_).Offset(, 1) = ar
    Application.EnableEvents = 1
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 30.11.2017 в 10:43
Dmitriymifns Дата: Четверг, 30.11.2017, 16:59 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо за подсказку, но макрос работает немного не так. Нужно чтобы при изменении одной из ячеек в столбце G (например G5) возвращалось ее предыдущее значение в соответствующую ячейку соседнего столбца H (т.е. H5), а остальные значения в столбце H оставались при этом неизменными. И таких столбцов как G будет несколько (т.е. если это будет столбец A, то значения должны возвращаться в столбец B, если столбец D, то в столбец E и т.д.)
 
Ответить
СообщениеСпасибо за подсказку, но макрос работает немного не так. Нужно чтобы при изменении одной из ячеек в столбце G (например G5) возвращалось ее предыдущее значение в соответствующую ячейку соседнего столбца H (т.е. H5), а остальные значения в столбце H оставались при этом неизменными. И таких столбцов как G будет несколько (т.е. если это будет столбец A, то значения должны возвращаться в столбец B, если столбец D, то в столбец E и т.д.)

Автор - Dmitriymifns
Дата добавления - 30.11.2017 в 16:59
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как макросом вернуть предыдущие значения ячеек с формулами (Макросы/Sub)
Страница 1 из 11
Поиск:

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