|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
||||||
Использование стандартных функций в макросе05.09.2016, 12:22. Показов 5302. Ответов 12
Метки нет (Все метки)
Коллеги,
доброго времени суток. Туплю уж извините, но не могу решить простую проблему, собственно задача такая: есть исходный документ. В нем перечисляются наименования закупаемых материалов. Есть другой документ, в котором материалы перечислены однократно но им соответствует еще один параметр - человек который закупает данный материал. Знаю, что ВПР решает данную задачу влет, но мне надо чтобы пенсионер не сильно задумывался, как это писать, потому что есть проблемка, столбец с ключевыми материалами может в разных файлах отличаться. Собственно я решил написать собственную функцию, которой на вход подается только значение ячейки с материалом, а далее система сама вызывает ВПР с данным входным параметром и все делает. Но не могу вызвать сам ВПР, подможите кто понимает!
0
|
||||||
| 05.09.2016, 12:22 | |
|
Ответы с готовыми решениями:
12
Использование стандартных функций в UserForm VBA Вычисление функций формулы в самом макросе Использование \1 вместе юникодом в макросе Word |
|
3946 / 2339 / 790
Регистрация: 02.11.2012
Сообщений: 6,214
|
|
| 05.09.2016, 13:11 | |
|
правильно задайте диапазон поиска.
так [Лист!RC[-9]:R[471]C[-8]] не правильно. п.с. оформляйте код тегами (например кнопка VB)
0
|
|
|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
|
| 05.09.2016, 13:43 [ТС] | |
|
Это для простоты я пока тренируюсь искать на "соседнем" листе. Как пойдет макрос, я его на фаил ориентирую. Меня больше смущает, что есть Application.WorksheetFunction.vlookup, не нет того же для ВПР. Возможно поэтому не ищет. И вообще, правильный ли подход вызова встроенной функции...
0
|
|
|
6997 / 2895 / 555
Регистрация: 19.10.2012
Сообщений: 8,803
|
|
| 05.09.2016, 13:51 | |
|
vlookup = ВПР
не понял фразы " есть Application.WorksheetFunction.vlookup, не нет того же для ВПР." А синтаксис применения функции в макросе даёт запись этого применения в макрос рекордером.
0
|
|
|
3946 / 2339 / 790
Регистрация: 02.11.2012
Сообщений: 6,214
|
|||||||
| 05.09.2016, 14:05 | |||||||
0
|
|||||||
|
2751 / 1725 / 779
Регистрация: 23.03.2015
Сообщений: 5,449
|
|
| 05.09.2016, 14:06 | |
|
Solitary_Dale,
приложите файлы, если можно...
0
|
|
|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
|
| 05.09.2016, 14:33 [ТС] | |
|
Коллеги, попробую перефразировать задачу. Для бабушки, которой бессмысленно объяснять что такое ВПР я хочу создать функцию одной переменной, на вход которой будет подаваться значение ячейки, по которой ВПР должен осуществлять поиск. Все остальные параметры функции всегда константа.
0
|
|
|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
|
| 05.09.2016, 14:39 [ТС] | |
|
Vlad999,
попробовал, всеравно дает ошибку #знач возможно я что-то некорректно пишу в типах данных самой функции Function maker(pos As Range) As Variant
0
|
|
|
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
|
|||||||||||
| 05.09.2016, 14:49 | |||||||||||
Сообщение было отмечено Solitary_Dale как решение
Решение
1
|
|||||||||||
|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
|
| 05.09.2016, 14:55 [ТС] | |
|
pashulka,
Да это оно! Правильно тогда я понимаю, что если я выношу таблицу, где осуществляется поиск в другой фаил, то в Range добавляется путь и имя файла?
0
|
|
|
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
|
||||||
| 05.09.2016, 15:11 | ||||||
|
Рабочая книга-источник должна быть открыта, поэтому путь указывать не нужно, т.е. достаточно :
0
|
||||||
|
1 / 1 / 0
Регистрация: 05.07.2016
Сообщений: 87
|
|
| 05.09.2016, 16:38 [ТС] | |
|
pashulka,
Да вот не хотелось бы открывать. Подозреваю, что поле Range дополнится только путем в этом случае. Или есть какая-то тонкость о которой я не подозреваю? не находит при открытом файле: Function Maker(Cell As Range) 'As Variant Maker = Application.VLookup(Cell, Range("'[Справочник материалов.xlsx]Лист1!'C:G"), 5, 0) End Function С и G у меня другой диапазон данных для поиска.
0
|
|
|
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
|
|||
| 05.09.2016, 17:21 | |||
|
Нет никакой тонкости, об'екта Range у закрытой книги просто не существует. Но если книга не должна открываться пользователем, можно (на выбор)
1) открыть её программно (например, при открытии книги с функцией), получить необходимый массив данных и, в дальнейшем, работать именно с этим массивом 2) создать именованную формулу, содержащую функцию ВПР() и уговорить вводить Вашу бабушку именно это имя. Это называется, куда переместился апостроф, а главное зачем ...
0
|
|||
| 05.09.2016, 17:21 | |
|
Помогаю со студенческими работами здесь
13
Отсутствие "стандартных" функций Использование строковых функций Использование подпрограмм-функций в программах Использование подпрограмм-функций в программах Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|