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

Вход

Регистрация

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

 

= Мир MS Excel/Перенести введенное значение и вернуть изначальную формулу - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Перенести введенное значение и вернуть изначальную формулу
Невилл Дата: Вторник, 22.12.2015, 23:56 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 79
Репутация: 2 ±
Замечаний: 0% ±

Excel 2007
Добрый день! Нужно помощь снова.

Задача довольно странная, пожалуй))) Но очень нужно для нового дэшборда.

1) Имеется две таблицы.
2) Нужно, чтобы при вводе значения в колонку "Формула" макрос скопировал это значение в другую таблицу.
3) А затем восстановить формулу в колонке "Формула"

Никак не могу в самом начале разобраться, какую команду использовать, чтобы проверять событие "введение значения в диапазоне".

Подкиньте идею, пожалуйста, кто может. Дальше код допилю уже сам. Пока буду параллельно думать.
К сообщению приложен файл: vba-.xls (36.5 Kb)
 
Ответить
СообщениеДобрый день! Нужно помощь снова.

Задача довольно странная, пожалуй))) Но очень нужно для нового дэшборда.

1) Имеется две таблицы.
2) Нужно, чтобы при вводе значения в колонку "Формула" макрос скопировал это значение в другую таблицу.
3) А затем восстановить формулу в колонке "Формула"

Никак не могу в самом начале разобраться, какую команду использовать, чтобы проверять событие "введение значения в диапазоне".

Подкиньте идею, пожалуйста, кто может. Дальше код допилю уже сам. Пока буду параллельно думать.

Автор - Невилл
Дата добавления - 22.12.2015 в 23:56
Невилл Дата: Среда, 23.12.2015, 00:08 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 79
Репутация: 2 ±
Замечаний: 0% ±

Excel 2007
На крайний случай придется поставить макрос на отдельную кнопку, но не хотелось бы лишнего добавлять, если есть способ лучше.
 
Ответить
СообщениеНа крайний случай придется поставить макрос на отдельную кнопку, но не хотелось бы лишнего добавлять, если есть способ лучше.

Автор - Невилл
Дата добавления - 23.12.2015 в 00:08
SLAVICK Дата: Среда, 23.12.2015, 00:21 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Думаю так:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s$
If Target.Column <> 3 Then Exit Sub
If Target.CountLarge > 1 Then Exit Sub
Application.EnableEvents = False
    s = Target.Value
    Application.Undo
    Cells(Target.Row, 7) = s
Application.EnableEvents = True
End Sub
[/vba]
Это в модуль листа.
К сообщению приложен файл: 3949065.xls (38.5 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеДумаю так:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s$
If Target.Column <> 3 Then Exit Sub
If Target.CountLarge > 1 Then Exit Sub
Application.EnableEvents = False
    s = Target.Value
    Application.Undo
    Cells(Target.Row, 7) = s
Application.EnableEvents = True
End Sub
[/vba]
Это в модуль листа.

Автор - SLAVICK
Дата добавления - 23.12.2015 в 00:21
Невилл Дата: Среда, 23.12.2015, 00:27 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 79
Репутация: 2 ±
Замечаний: 0% ±

Excel 2007
Спасибо огромное! Идеально просто)))
 
Ответить
СообщениеСпасибо огромное! Идеально просто)))

Автор - Невилл
Дата добавления - 23.12.2015 в 00:27
Wasilich Дата: Среда, 23.12.2015, 01:01 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Идеально просто
А как же 3-й пункт
3) А затем восстановить формулу в колонке "Формула"
Или уже не надо? Если надо, так может это подойдет.
К сообщению приложен файл: 8407758.xls (43.0 Kb)


Сообщение отредактировал Wasilic - Среда, 23.12.2015, 01:22
 
Ответить
Сообщение
Идеально просто
А как же 3-й пункт
3) А затем восстановить формулу в колонке "Формула"
Или уже не надо? Если надо, так может это подойдет.

Автор - Wasilich
Дата добавления - 23.12.2015 в 01:01
Невилл Дата: Среда, 23.12.2015, 10:33 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 79
Репутация: 2 ±
Замечаний: 0% ±

Excel 2007
В варианте Славика формула тоже сохраняется в ячейке нормально. Но все равно спасибо. Уже подогнал код под свой файл, осталось протестить.
 
Ответить
СообщениеВ варианте Славика формула тоже сохраняется в ячейке нормально. Но все равно спасибо. Уже подогнал код под свой файл, осталось протестить.

Автор - Невилл
Дата добавления - 23.12.2015 в 10:33
SLAVICK Дата: Среда, 23.12.2015, 10:37 | Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
А как же 3-й пункт

Он выполняется :D
[vba]
Код
Application.Undo
[/vba]
Возвращает формулу обратно yes
Попробуйте в моем файле.


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
А как же 3-й пункт

Он выполняется :D
[vba]
Код
Application.Undo
[/vba]
Возвращает формулу обратно yes
Попробуйте в моем файле.

Автор - SLAVICK
Дата добавления - 23.12.2015 в 10:37
Wasilich Дата: Среда, 23.12.2015, 11:30 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
озвращает формулу обратно yes
Попробуйте в моем файле.
Да блин! А я даже в своем не проверил, думал что возвращается только значение.
 
Ответить
Сообщение
озвращает формулу обратно yes
Попробуйте в моем файле.
Да блин! А я даже в своем не проверил, думал что возвращается только значение.

Автор - Wasilich
Дата добавления - 23.12.2015 в 11:30
  • Страница 1 из 1
  • 1
Поиск:

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