|
|
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
В макросе Excel использую функцию из внешней DLL: Private Declare Sub xxx Lib "yyy.dll" но неудобство в том, что эту DLL нужно класть в один из доступных по путям каталогов, что неудобно и не всегда возможно. Как и можно ли подключать функции из рядом лежащего XLS-файла? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 15:32:48 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
mihmihВ макросе Excel использую функцию из внешней DLL: Private Declare Sub xxx Lib "yyy.dll". Как и можно ли подключать функции из рядом лежащего XLS-файла? :) А к первому внешняя функция откуда подключается? Еще из одного файла? Ну, тогда, если сможете все это превратить в "ленту Мебиуса", то это будет прорыв... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2005, 16:36:56 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
Извините, ошибся. Имелось ввиду то, что пользователю высылается два файла: xxx.XLS и yyy.DLL - он их кладет РЯДОМ и запускает XLS. Бывает, что доступа в %SYSTEMDIR% и иже с ними нет, поэтому вариант просить пользователя скинуть DLL в "папку Windows" не катит - да и не спортивно это как-то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2005, 10:01:35 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
Высылайте им инсталлятор (хоть RAR-SFX). Просто для VB есть Fusion, которой библиотеки вкладывает в exe, а для VBA - нет, по понятным причинам. Или класть библиотеку в заведомо доступный каталог? Можно ведь в декларации функции писать несистемный путь к библиотеке. Если книги Excel всегда кладутся в одно и то же место, то тогда так и делайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2005, 11:06:31 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
Ну можно делать вот так: В Workbook_Open даешь команду: ChDir ThisWorkbook.Path В модуле с рабочим макросом делаешь объявление функции и используешь ее: Private Declare Sub xxx Lib ".\yyy.dll" то есть при открытии книги меняем каталог на тот в котором лежит открываемая книга, а потом объявляем внешнюю функцию по пути относительно текущего каталога. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2005, 18:26:30 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
Просто предположение: чисто теоретически, можно бинарный код библиотеки (целиком) поместить в один из листов книги. Потом создавать файл, записывать в него код - формировать библиотеку "на ходу" :) Только сложновато, наверное, я не пробовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2005, 08:31:24 |
|
||
|
Private Declare Sub xxx Lib "yyy.dll"
|
|||
|---|---|---|---|
|
#18+
Спасибо, White Owl - все отлично заработало. Просто если исходить из минимального уровня пользователя, проще объяснить девочке Маше, что перед тем как уйти в отпуск она должна скопировать Кате всю папку ОТЧЕТ (в ней как раз Отчет.xls и *.dll), чем объяснять что такое каталог Windows и переменная %PATH%. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 15:45:07 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=33153892&tid=2185932]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 336ms |

| 0 / 0 |
