powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вызов функции из другой книги Excel
23 сообщений из 23, страница 1 из 1
Вызов функции из другой книги Excel
    #33382329
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть две книги.
В Книга1 в модуле содержится функция MyFunc().
В Книга2 на листе необходимо получить результат этой функции.

Естественно вызов функции A2=MyFunc(A1) из ячейки в Книга2 приводит к ошибке #ИМЯ?

Вопрос: Как указать что MyFunc() лежит в Книга1?

Помню, что это возможно, а найти не могу.
Подскажите, а то чегой-то я туплю.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382419
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А, может, был референс на вторую книгу?
*задумчиво чешет в репе*
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382429
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
 Call Application.Run("'c:\tmp\test.xls'!Test1")
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382434
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victosha
Код: plaintext
 Call Application.Run("'c:\tmp\test.xls'!Test1")


не обратил внимание на вопрос.
если книга уже открыта - просто

Call Application.Run("test.xls!Test1")
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382773
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victosha Victosha
Код: plaintext
 Call Application.Run("'c:\tmp\test.xls'!Test1")


не обратил внимание на вопрос.
если книга уже открыта - просто

Call Application.Run("test.xls!Test1")
Это да.
Извини, я уточню важную часть вопроса:
Функция вызывается из ячейки листа!
Т.е. просто пишешь в ячейке А2
=MyFunc(A1)

Далее идут в замедленном времени мысли господина Экселя.
1 мысль Экселя: Меня просят с помощью функции MyFunc преобразовать значение ячейки А1 и записать результат в ячейку А2.
2 мысль Экселя: Ой! А у меня в стандартных функциях такой функции нет.
3 мысль Экселя: Ой-ой!! И в модулях книги, из которой просят, тоже, блина, нет такой функции.
4 мысль Экселя: Ну, мне надоело возиться с этим запросом, ну не нашел я такой функции, и искать не знаю где. Пожалуй прикинусь дурачком и отвечу что я не знаю ни чего. Скажу: #ИМЯ?

А хочется что бы четвертая мысль Экселя была такой: Таак. А ведь у меня тут есть еще открытая книжечка. Посмотрю-ка я в её модулях. Может там есть эта функция.
или такой:
Опа! да тут говорят что нужно обязательно поискать эту функцию в модулях Книга2.
---------------------
Вот ведь какие дела.
М:)
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382776
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сори:) Конечно же в модулях первой книги:)
ЗЫ: "Опа! да тут говорят что нужно обязательно поискать эту функцию в модулях Книга1 (КНИГА ОДИН)."
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382784
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Letter_DА, может, был референс на вторую книгу?
*задумчиво чешет в репе*

"Здесь помню, а здесь не помню."
Собственно о ссылке и вопрос.
Может книгу (другую) можно подключить как-то - чтобы Эксель искал и в её модулях тоже.
ХЗ
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33382997
А почему не хочешь скинуть функцию в личную книгу макросов?
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383031
Lutik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Victosha Victosha
Код: plaintext
 Call Application.Run("'c:\tmp\test.xls'!Test1")


не обратил внимание на вопрос.
если книга уже открыта - просто

Call Application.Run("test.xls!Test1")

Решение можно было нано по анологии додумать.
не A2=MyFunc(A1)
а A2=Книга2.xls!MyFunc(A1)

тока это работает если Книга2 открыта.

Пользователь2А почему не хочешь скинуть функцию в личную книгу макросов?

Товаришь правильно говорит. эта книга всегда доступна и открыта.

Удачи!
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383244
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если нужно вызывать на листе, то для обеспечения ее доступности, функция должна находиться в одной из загружаемых при старте Excel книг. Например, в личной книге макросов.
Или в одном из установленных AddIn-ов.
Посмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383366
Lutik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VictoshaПосмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
Где, где, простите, посмотреть? С этого места поподробнее.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383402
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lutik VictoshaПосмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
Где, где, простите, посмотреть? С этого места поподробнее.
зовется ФАК. живет здесь
http://www.sql.ru/faq/faq_topic.aspx?fid=413
если правильно помню, автор текста - автор последнего комментария к нему.
(
ну очень эмоциональный человек
:))
)
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383418
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
100g Letter_DА, может, был референс на вторую книгу?
*задумчиво чешет в репе*

"Здесь помню, а здесь не помню."
Собственно о ссылке и вопрос.
Может книгу (другую) можно подключить как-то - чтобы Эксель искал и в её модулях тоже.
ХЗ
Дык я и говорю.
Тулс - референсес - бровсе (*.*) - нужная тебе книга... И подключаешь!
Ремарка: проект собственный книги надо перед этим переименовать, типа "VBAProject" в "VBAProject22222". Чтоб конфликта имен не было.
И далее работаешь с её (той книги) функцыями, как с родными.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383533
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LutikРешение можно было нано по анологии додумать.
не A2=MyFunc(A1)
а A2=Книга2.xls!MyFunc(A1)

тока это работает если Книга2 открыта.


Получилось! Спасибо.

Спасибо всем!
Про личную книгу и надстройки. Я думал над этим вариантом и мне показалось, что это сложнее в плане организации. Это еще одна книга которую надо не терять обновлять у всех и тыпы. А так они обращаются к книге за данными а все функции всегда в ней.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383726
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неее, Книга2.xls!MyFunc(A1) - это замучаешься кажный раз писать.
А с референсом проще: MyFunc(A1)

А, вообще, делайте, как хотите, взрослые уже дяди.
:)
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33383864
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Letter_DНеее, Книга2.xls!MyFunc(A1) - это замучаешься кажный раз писать.
А с референсом проще: MyFunc(A1)

А, вообще, делайте, как хотите, взрослые уже дяди.
:)

Может я чего не понял?
Можно подключить книгу без преобразования её в надстройку?
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33384093
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/forum/actualthread.aspx?tid=235687#2077663
ремарку, правда, ровно наоборот я бы произнес.
:)

(с выражением лица)
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33384216
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victosha http://www.sql.ru/forum/actualthread.aspx?tid=235687#2077663
ремарку, правда, ровно наоборот я бы произнес.
:)

(с выражением лица)

Подождите, люди добрые. Я знаю как превратить книгу в надстройку.
Вопрос в том что я не могу превратить книгу в надстройку по условию. Эта книга (в которой должна быть функция), действующий документ. Она постоянно открыта и постоянно обновляется. При этом она находится в сети и другие пользователи должны иметь возможность получать из нее данные. Чтобы избавить пользователей от написания конструкций типа:
{=СУММ(ЕСЛИ($D$1=1;ЕСЛИ(Фам=$A6;ЕСЛИ(Дата>=$B$1;ЕСЛИ(Дата<=$C$1;ЕСЛИ(Стат=C$2;ЕСЛИ(Опер="Прих";Сум)))))))}
да еще и с указанием что это всё в другой книге, я и хочу дать набор функций. Например эта конструкция должна быть заменена на что-то типа:
=ВыручкаМенеджераЗаПериод(Менеджер;Период).

Примерно так.
М:)
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33384622
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
100g, да, тупо прицепляешь другую книгу.
Цытирую. Повторно.

Letter_DДык я и говорю.
Тулс - референсес - бровсе (*.*) - нужная тебе книга... И подключаешь!
Ремарка: проект собственный книги надо перед этим переименовать, типа "VBAProject" в "VBAProject22222". Чтоб конфликта имен не было.
И далее работаешь с её (той книги) функцыями, как с родными.
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33384626
Letter_D
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вдогонку:
Можно подключить книгу без преобразования её в надстройку
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #33384774
Фотография 100g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Letter_DВдогонку:
Можно подключить книгу без преобразования её в надстройку
Во, млин, я тупой!
WOW. Случилось!
Сенкую креппко:)
Ништяк!!!
Всем удачи и здоровья и збычи мечт.
И отдельный респект за просвет и терпение Letter_D
:)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Вызов функции из другой книги Excel
    #34813393
Ильгиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет. Какие условия должны быть выполнены для команды
Код: plaintext
Call Application.Run("c:\tmp\test.xls!Test1")
??

Ошибка 1004, не определено приложение или объект.

Вызов происходит из процедуры из ThisWorkBook файла file.xls в процедуру/функцию другого файла (test.xls).
...
Рейтинг: 0 / 0
Вызов функции из другой книги Excel
    #34816408
Ильгиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПОчему
Код: plaintext
1.
 Call Application.Run("'c:\tmp\test.xls'!Test1")
Выдает ошибку 1004, Application-defined or object-defined error??
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вызов функции из другой книги Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]