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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос - найти, скопировать, вставить - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Макрос - найти, скопировать, вставить
DJ_Marker_MC Дата: Пятница, 14.09.2012, 17:42 | Сообщение № 1
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Всем добрый вечер, прошу знатоков VBA написать одну процедуру которая будет искать значение ячейки C1 в строке 14 и вставлять в этот столбец значения с диапазона L3:L10
Нужен именно макрос, а не формула поскольку С1 является списком и при выборе какого либо региона изменяются данные таблицы C3:K10 потом вручную проставляются значения в L3:L10 и после этого копирую значения вручную в нужный столбец, после этого выбираю следующий регион в C1 и опять проставляю L3:L10 новые значения. Чтоб не копировать вручную хочу сделать кнопку после нажатия на которую данные будут заноситься в нужный столбец.
Заранее спасибо.
К сообщению приложен файл: 0304212.xlsx (12.1 Kb)
 
Ответить
СообщениеВсем добрый вечер, прошу знатоков VBA написать одну процедуру которая будет искать значение ячейки C1 в строке 14 и вставлять в этот столбец значения с диапазона L3:L10
Нужен именно макрос, а не формула поскольку С1 является списком и при выборе какого либо региона изменяются данные таблицы C3:K10 потом вручную проставляются значения в L3:L10 и после этого копирую значения вручную в нужный столбец, после этого выбираю следующий регион в C1 и опять проставляю L3:L10 новые значения. Чтоб не копировать вручную хочу сделать кнопку после нажатия на которую данные будут заноситься в нужный столбец.
Заранее спасибо.

Автор - DJ_Marker_MC
Дата добавления - 14.09.2012 в 17:42
Hugo Дата: Пятница, 14.09.2012, 20:32 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
[vba]
Code
Sub CopyData()
[C14:AR14].Find([c1]).Offset(1).Resize(8, 1).Value = [L3:L10].Value
End Sub
[/vba]


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
Сообщение[vba]
Code
Sub CopyData()
[C14:AR14].Find([c1]).Offset(1).Resize(8, 1).Value = [L3:L10].Value
End Sub
[/vba]

Автор - Hugo
Дата добавления - 14.09.2012 в 20:32
DJ_Marker_MC Дата: Пятница, 14.09.2012, 21:25 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Hugo, нет слов, одни эмоции... Большое спасибо, вроде ничего сложного, а сколько пользы!!!
 
Ответить
СообщениеHugo, нет слов, одни эмоции... Большое спасибо, вроде ничего сложного, а сколько пользы!!!

Автор - DJ_Marker_MC
Дата добавления - 14.09.2012 в 21:25
Hugo Дата: Пятница, 14.09.2012, 23:13 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
На здоровье.
Т.к. в задаче "ненайдение" исключено, то можно не обрабатывать ошибку поиска. Поэтому всё уместилось в одну строку.
В других случаях нужно сперва поискать, потом удостовериться, что нашлось, и если нашлось, то затем от этой ячейки "плясать".


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеНа здоровье.
Т.к. в задаче "ненайдение" исключено, то можно не обрабатывать ошибку поиска. Поэтому всё уместилось в одну строку.
В других случаях нужно сперва поискать, потом удостовериться, что нашлось, и если нашлось, то затем от этой ячейки "плясать".

Автор - Hugo
Дата добавления - 14.09.2012 в 23:13
DJ_Marker_MC Дата: Суббота, 15.09.2012, 01:16 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Я немножко подправил этот кодик для удобства

[vba]
Code
Sub CopyData()
Range(["C"] & [R1], ["AS"] & [R1]).Find([c1]).Offset(1).Resize([m1], 1).Value = Range(["L"] & [O1], ["L"] & [P1]).Value
End Sub
[/vba]

Поскольку количество строк будет меняться, то я попривязывал к ячейкам в которых можно вручную задать нужные параметры, ну, а чтоб в ручную этого не делать, то в ячейках в которых ищет ВБА прописал формулы счет и строка)))))
Остаётся лишь пользоваться и наслаждаться процессом
 
Ответить
СообщениеЯ немножко подправил этот кодик для удобства

[vba]
Code
Sub CopyData()
Range(["C"] & [R1], ["AS"] & [R1]).Find([c1]).Offset(1).Resize([m1], 1).Value = Range(["L"] & [O1], ["L"] & [P1]).Value
End Sub
[/vba]

Поскольку количество строк будет меняться, то я попривязывал к ячейкам в которых можно вручную задать нужные параметры, ну, а чтоб в ручную этого не делать, то в ячейках в которых ищет ВБА прописал формулы счет и строка)))))
Остаётся лишь пользоваться и наслаждаться процессом

Автор - DJ_Marker_MC
Дата добавления - 15.09.2012 в 01:16
  • Страница 1 из 1
  • 1
Поиск:

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