Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как программно получить список функций Excel? / 25 сообщений из 26, страница 1 из 2
12.10.2006, 16:03
    #34051112
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Можно ли программно получить список функций листа Excel? если да, как? Спасибо!
...
Рейтинг: 0 / 0
12.10.2006, 16:38
    #34051275
KL (XL)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Как это ни парадоксально, но через VBA похоже нельзя :-(

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
12.10.2006, 16:43
    #34051302
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
KL (XL)Как это ни парадоксально, но через VBA похоже нельзя :-(

KL
[MVP - Microsoft Excel]
Спасибо, похоже, что так и есть...
...
Рейтинг: 0 / 0
12.10.2006, 18:13
    #34051709
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
KL (XL)Как это ни парадоксально, но через VBA похоже нельзя :-(
Ну почем нельзя? Можно. VBA это обычный COM объект, так что IDispatch в зубы и вперед, вгрызаться в потроха. Теоретически возможно, но практически я туда не хочу :)

А еще можно извратится через SendKeys. Посылать последовательно Alt+F11, F2, Down, Down.... Down, PrintScreen :)
...
Рейтинг: 0 / 0
12.10.2006, 18:39
    #34051792
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
White Owl KL (XL)Как это ни парадоксально, но через VBA похоже нельзя :-(
Ну почем нельзя? Можно. VBA это обычный COM объект, так что IDispatch в зубы и вперед, вгрызаться в потроха. Теоретически возможно, но практически я туда не хочу :)

А еще можно извратится через SendKeys. Посылать последовательно Alt+F11, F2, Down, Down.... Down, PrintScreen :) если бы билли гейтс был бы тупым или его программисты были бы такими, то я согласился бы с вами. Но есть адын пример, когда жмешь на кнопку и получаешь набор команд в панели инструментов. есть такие примеры. с другой стороны, если набор функций стандартен для каждого компа, то и нет необходимости выводить этот список. но опять же с другой стороны, есть справочники по функциям в ексель, неужели пипл это делал вручную?
...
Рейтинг: 0 / 0
12.10.2006, 18:56
    #34051847
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Ivan33если бы билли гейтс был бы тупым или его программисты были бы такими, то я согласился бы с вами. Но есть адын пример, когда жмешь на кнопку и получаешь набор команд в панели инструментов. есть такие примеры. Показывай :)

Ivan33но опять же с другой стороны, есть справочники по функциям в ексель, неужели пипл это делал вручную?Ага. Справочники по функциям вручную и делаются.
...
Рейтинг: 0 / 0
13.10.2006, 08:56
    #34052426
orunbek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
White OwlА еще можно извратится через SendKeys. Посылать последовательно Alt+F11, F2, Down, Down.... Down, PrintScreen :)
самый реальный кажись вариант, ну не PrintScreen, а средствами Automate, там что-то вроде функции GetText было или там же функции отображаются в виде списка ну вот в Automate есть функции получения значения из списка, или через API
...
Рейтинг: 0 / 0
13.10.2006, 10:17
    #34052696
????????????????
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Ребята! А зачем вам это все надо ?
...
Рейтинг: 0 / 0
13.10.2006, 11:05
    #34052899
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
White Owl Ivan33если бы билли гейтс был бы тупым или его программисты были бы такими, то я согласился бы с вами. Но есть адын пример, когда жмешь на кнопку и получаешь набор команд в панели инструментов. есть такие примеры. Показывай :)

Ivan33но опять же с другой стороны, есть справочники по функциям в ексель, неужели пипл это делал вручную?Ага. Справочники по функциям вручную и делаются. я уже выкладывал, есть такой файл FaceID.
...
Рейтинг: 0 / 0
13.10.2006, 11:09
    #34052917
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
????????????????Ребята! А зачем вам это все надо ?
Нужно для того, чтоб можно было обрабатывать формулы,
введенные пользователем не в ячейку, а в поле формы.
В этой формуле могут быть как имена функций Excel, так и имена параметров,
оторые при выполнении будут заменяться значениями
(наподобие, как это делает Access).
Вот нужно отделить имена параметров от имен функций.


Именно для этой цели есть пара вариантов "в лоб": скопировать список этих
функций из Help или тестировать каждое слово на код ошибки при evaluate.
Но хотелось бы "поизящнее".
...
Рейтинг: 0 / 0
13.10.2006, 11:11
    #34052924
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
????????????????Ребята! А зачем вам это все надо ? прааально, зачем?
...
Рейтинг: 0 / 0
13.10.2006, 11:11
    #34052925
????????????????
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
...
Рейтинг: 0 / 0
13.10.2006, 11:59
    #34053095
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
/topic/312575&hl=
...
Рейтинг: 0 / 0
13.10.2006, 12:06
    #34053133
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
/topic/321055&hl= - вот по поводу получения команд панели инструментов. Есть уже готовые и выведенные команды. а есть файлы, в которых щелкаешь на кнопку и комп выводит эти команды. или иконки (все возможные) для панели инструментов
...
Рейтинг: 0 / 0
13.10.2006, 12:39
    #34053300
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Ivan33, спасибо, вещи забавные, как добраться до имен функций?...
...
Рейтинг: 0 / 0
13.10.2006, 14:01
    #34053701
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
vbaproIvan33, спасибо, вещи забавные, как добраться до имен функций?... ну это уже вопрос к вбашникам. Если уж можно получить список иконок программным способом и команд, то возможно и это, мне думается, другое дело как? Это бы я тоже хотел узнать:)
...
Рейтинг: 0 / 0
13.10.2006, 16:21
    #34054214
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
vbaproIvan33, спасибо, вещи забавные, как добраться до имен функций?... ну или вот вариант. если пользовательские функции заделанные в вба могут попадать в список (в тот, откуда они вызываются, например кнопкой f ), то можно сделать и обратное:)
...
Рейтинг: 0 / 0
14.10.2006, 15:26
    #34055164
KL (XL)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
С помощью коллег Chip Pearson (MVP Excel USA) и Hector Miguel Orozco Diaz (MVP Excel Mexico) похоже удалось найти одно решение.

Примечания:
- В системе должна быть установлена библиотека Type Library Information (TLBINF32.dll) распространяемая в составе Visual Studio 6.0 и Visual Basic 6.0 и выше.
- Список получаемый с помощью данного решения содержит только функции рабочего листа доступные для VBA .

1) скачиваем: http://www.cpearson.com/Zips/TLIUtils.ZIP

В главном модуле modTLI4XL в процедуре Sub AAA() ...

2) закомментировать/удалить все инструкции начинающиеся на Set V = ......

3) добавить след. инструкцию после/вместо вышеупомянутых:
Set V = MethodsOfObject("WorksheetFunction", SearchAll, MethodAll)

внутри цикла: For N = 1 To V.Count ...

4) закомментировать/удалить
Set P = V(N)
Debug.Print P.Name, P.Position, P.DataType, P.DefaultValue


5) раскомментировать:
Set MWT = V(N)
Debug.Print MWT.LibName, MWT.ObjectName, MWT.MethodName, MWT.Context, MWT.ProcType



KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
14.10.2006, 16:50
    #34055207
garober
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
У меня стоит VB 6.0, но библиотеки Type Library Information (TLBINF32.dll) нет.
Где ее взять и в какую папку затем положить?
...
Рейтинг: 0 / 0
14.10.2006, 17:08
    #34055215
KL (XL)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
garoberУ меня стоит VB 6.0, но библиотеки Type Library Information (TLBINF32.dll) нет.
Где ее взять и в какую папку затем положить?
У меня стоит Visual Studio. Согласно данной статье: http://support.microsoft.com/kb/224331/EN-US/ , библиотека Type Library Information также содержится на VB 6.0 CD (???)

Устанавливать ее надо в \WINDOWS\System32

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
14.10.2006, 18:37
    #34055254
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
2KL (XL): спасибо большое за инфо, буду пробовать.
2garober: я скачал отсуда http://www.dll.ru/dll/T/9.html
...
Рейтинг: 0 / 0
14.10.2006, 19:18
    #34055278
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Еще раз спасибо, все работает. Сначала ругался, что не может найти
Код: plaintext
 TLI.InvokeKinds.INVOKE_CONST 
. Тогда заменил числом 32 (узнал из TlbInf32.chm).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Enum MethodType  ' Same values as TLI.InvokeKinds
    MethodConstant =  32  'TLI.InvokeKinds.INVOKE_CONST
    MethodEvent = TLI.InvokeKinds.INVOKE_EVENTFUNC
    MethodFunction = TLI.InvokeKinds.INVOKE_FUNC
    MethodGet = TLI.InvokeKinds.INVOKE_PROPERTYGET
    MethodLet = TLI.InvokeKinds.INVOKE_PROPERTYPUT
    MethodSet = TLI.InvokeKinds.INVOKE_PROPERTYPUTREF
    MethodSub =  0         ' not defined in TLI.InvokeKinds
    MethodAll = MethodConstant + MethodEvent + MethodFunction + MethodGet + MethodLet + MethodSet + MethodSub
End Enum
...
Рейтинг: 0 / 0
14.10.2006, 19:50
    #34055286
garober
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
vbapro2garober: я скачал отсуда http://www.dll.ru/dll/T/9.html Зашел по указанной вами ссылке, нашел файл TLBINF32.DLL кликнул на Download, ввел предлагаемый код, нажал Загрузить.
Вместо загрузки файла TLBINF32.DLL происходит переход на "Посетите наши другие сайты"
Что неправильно делаю?
...
Рейтинг: 0 / 0
14.10.2006, 20:18
    #34055302
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
garober vbapro2garober: я скачал отсуда http://www.dll.ru/dll/T/9.html Зашел по указанной вами ссылке, нашел файл TLBINF32.DLL кликнул на Download, ввел предлагаемый код, нажал Загрузить.
Вместо загрузки файла TLBINF32.DLL происходит переход на "Посетите наши другие сайты"
Что неправильно делаю?
попробуй эти
http://www.dll.ru/downloaddll.php?id=59750
http://www.dlldll.ru/getdll/20060.html
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
02.09.2012, 09:37
    #37940269
maksim32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как программно получить список функций Excel?
Сейчас на http://www.dll.ru/dll/t/10.html можно скачать TLBINF32.DLL
Дайте пожалуйста файл или ссылку на TLBINF32.chm !! Нигде не могу найти!
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как программно получить список функций Excel? / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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