![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 28.05.2014
Сообщений: 158
|
![]()
Доброго времени суток, уважаемые форумчане!
Буду краток. На лист "Результат", в гр.6 "F", нужен макрос ВПР с листа "Данные" (количество строк на листе "Данные" и "Результат", всегда по разному). На форуме нашел макрос от "Казанский", код ниже, попробовал его внедрить в свою таблицу, запутался в значениях. Прошу помочь, файл прилагаю. Код от "Казанский". Sub Крутой_Макрос() Dim c As Range, Искомое_значение Искомое_значение = "Искомое_значение" 'поиск нужной таблицы на листе Справочник Set c = Sheets("Справочник").Cells.Find("*" & Искомое_значение, , xlValues, xlWhole) If Not c Is Nothing Then 'вставка формулы ВПР Sheets("Расчет").Range("D3").Formul aR1C1 = "=VLOOKUP(RC[-3]," & c.EntireColumn.Resize(, 3).Address(, , xlR1C1, True) & ",3,0)" End If End Sub |
![]() |
![]() |
![]() |
#2 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]() Цитата:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
|
![]() |
![]() |
![]() |
#3 |
Заблокирован
Регистрация: 15.02.2010
Сообщений: 148
|
![]() Код:
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 28.05.2014
Сообщений: 158
|
![]()
AleksandrH
Спасибо! Все работает! Только я сам виноват, не правильно сформулировал что я хотел. Действительно, макрос работает, за что благодарен, и прописывает в каждую ячейку, формулу ВПР, а хотелось бы только значение, т.е. полученный результат. Видать по этому компьютер долго зависал, что прописывал формулу, а не результат, а так, все отлично! |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
А зачем макросом именно ВПР()? Быстрее ведь сразу брать значения, особенно быстро будет по Виндой на словаре, ну и в любом случае на массивах нужно делать.
А сейчас Вы перебираете каждую ячейку шестого столбца Sheets("Результат"), и каждое значение индивидуально ищите по всему столбцу Sheets("Данные"), причём ещё на каждое такое действие высчитываете "а сколько там всего заполнено, вдруг что-то изменилось...". Это я про вариант AleksandrH http://programmersforum.ru/showpost....14&postcount=3 Т.к. архивы мне недоступны - нового примера кода не будет. Но тут уже их таких сотня была...
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ВПР | ПавелАлександрович | Microsoft Office Excel | 17 | 15.02.2011 14:24 |
открытие нескольких книг одним макросом и закрытие книг другим макросом | kursant95 | Microsoft Office Excel | 6 | 27.01.2011 16:54 |
ВПР | keshechnik | Помощь студентам | 0 | 14.11.2010 21:39 |
Впр | keshechnik | Microsoft Office Excel | 5 | 14.11.2010 14:39 |
ВПР | Foxx | Microsoft Office Excel | 2 | 14.03.2010 16:29 |