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

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

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

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


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

Call Application.Run("test.xls!Test1")
...
Рейтинг: 0 / 0
16.11.2005, 23:43:35
    #33382773
100g
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
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
16.11.2005, 23:46:58
    #33382776
100g
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
Сори:) Конечно же в модулях первой книги:)
ЗЫ: "Опа! да тут говорят что нужно обязательно поискать эту функцию в модулях Книга1 (КНИГА ОДИН)."
...
Рейтинг: 0 / 0
16.11.2005, 23:56:16
    #33382784
100g
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
Letter_DА, может, был референс на вторую книгу?
*задумчиво чешет в репе*

"Здесь помню, а здесь не помню."
Собственно о ссылке и вопрос.
Может книгу (другую) можно подключить как-то - чтобы Эксель искал и в её модулях тоже.
ХЗ
...
Рейтинг: 0 / 0
17.11.2005, 08:15:00
    #33382997
Вызов функции из другой книги Excel
А почему не хочешь скинуть функцию в личную книгу макросов?
...
Рейтинг: 0 / 0
17.11.2005, 08:50:17
    #33383031
Lutik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
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
17.11.2005, 09:59:55
    #33383244
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
если нужно вызывать на листе, то для обеспечения ее доступности, функция должна находиться в одной из загружаемых при старте Excel книг. Например, в личной книге макросов.
Или в одном из установленных AddIn-ов.
Посмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
...
Рейтинг: 0 / 0
17.11.2005, 10:41:58
    #33383366
Lutik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
VictoshaПосмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
Где, где, простите, посмотреть? С этого места поподробнее.
...
Рейтинг: 0 / 0
17.11.2005, 10:53:50
    #33383402
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
Lutik VictoshaПосмотри ФАК. Там написано, как книгу Excel превратить в AddIn.
Где, где, простите, посмотреть? С этого места поподробнее.
зовется ФАК. живет здесь
http://www.sql.ru/faq/faq_topic.aspx?fid=413
если правильно помню, автор текста - автор последнего комментария к нему.
(
ну очень эмоциональный человек
:))
)
...
Рейтинг: 0 / 0
17.11.2005, 10:58:37
    #33383418
Letter_D
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов функции из другой книги Excel
100g Letter_DА, может, был референс на вторую книгу?
*задумчиво чешет в репе*

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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