Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Q: специальные возможности среды VBA? Добавлено: 04.01.03 14:53  

Автор вопроса:  Иван FXS

Здравствуйте, коллеги.

Вот есть VBA как среда программирования: то, что открывается "около" Excel'я (97-го, например) по Alt-F11 ...

И есть в ней такие "специальные" окна:  

1. Окно локальных переменных

2. Окно контрольного значения

3. Стек вызова ...

То есть - среда всю эту "информацию" об исполняемой VB(А)-программе отслеживает и даже нам благосклонно показывает - смотрите сколько хотите ... глазками :-(

Вопрос: а можно ли как-то ПРОГРАММНО (то есть - изнутри самой исполняемой программы) до всей этой функциональной информации дотянуться?

(Ну типа того, как библиотека "MS VB for Application Extensibility" позволяет программе дотянуться самой до своего собственного текста ... )

Буду очень признателен за разъяснения и даже - за указание направления, в котором мне следует за ними отправиться! ;-)

НП, Иван FXS

PS. А вообще: "среда" VBA - это ActiveX?

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #1 Добавлено: 08.01.03 10:06

VBA это надстройка, а не ActiveX, хотя элементы последнего имеют место. И в сети можно найти даже пару контролов позволяющих добавлять в собственные программы на VB VBA-совместимые скрипты. Она вполне самостоятельна. Добраться до значений этого всего можно с помощью некоторых недокументированных API вкупе с VarPtr,ObjPtr,AddressOf и прочими аттавизмами VB, которые периодически появляются на сайтах подобных allapi.net.

Ответить

Номер ответа: 2
Автор ответа:
 Иван FXS



Вопросов: 5
Ответов: 7
 Профиль | | #2 Добавлено: 08.01.03 12:18

Спасибо за ответ, Вечный Юзер!
Но - что такое "надстройка" (= над чем она надстраивается)?

Вообще, это метафора или точный термин?

> Она вполне самостоятельна.

А не подскажете, - из какого файла она (надстройка-VBA) загружается?

НП, Иван FXS

Ответить

Номер ответа: 3
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #3 Добавлено: 08.01.03 12:37

Надстройка это обычная библиотека, скомпилированная только с особыми параметрами, для того чтобы можно было цепляться к конкретному прораммному продукту. Для Excell'я надстройки могут иметь как расширение dll, так и xla. Надстройки настраиваются через меню Сервис/Надстройки... можно поэксперементировать со штатными надстроечками. VBA живет в /../../Program Files/Common files/Microsoft Shared/VBA/. На счет "вполне самостоятельна" эт я погорячился:). Я имел ввиду, что для разработки макросов/надстроек её вполне хватает. А вот без среды она работать может и будет, только вот это уже будет Visual Basic без компилятора:). Кому он такой нужен? Правильно - никому. А как надстройка - милое дело. Corel Draw уже с версии 10 (после того как Microsoft перекупил некоторый процент его акций) имеет в себе полноценую среду VBA. Почему ее нельзя выключить? Ответ прост - сама программа ей пользуется. Можно провести эксперимент. Отправить на печать четконастроенный текст. То есть двусторонняя печать через один в экономном качестве и пр... В момент спулинга (отправки печати на принтер) нажать на Ctrl+Break. Увидим временный макрос, созданный MS Word, к примеру, в котором все это описано.:) Только компьютер и принтер должны быть как можно медленнее, потому как все это осуществляется за какие-то секунды а то и доли.

Ответить

Номер ответа: 4
Автор ответа:
 Иван FXS



Вопросов: 5
Ответов: 7
 Профиль | | #4 Добавлено: 08.01.03 15:05

>Надстройки настраиваются через меню Сервис/Надстройки

 

А-a-a! Эти-то "надстройки" я знаю (не совсем уж чайник ;-) ) ... Но VBA-как-надстройку там ведь отсутствует, правда?

 

> VBA живет в /../../Program Files/Common files/Microsoft Shared/VBA/

 

Вот полный список "исполнимых" файлов из этой директории на моем компюьютере:

MRT7RUS.DLL

VBA332.DLL

VBA3RU.DLL

VBACV10.DLL

VBACV20.DLL

VBE.DLL

VBEEXT1.OLB

- не подскажите, который из них - VBA-редактор? А "среда", та которая - например - трассирует исполняемый макрос, она тоже в одной из этих "библиотек"?

Спаибо за ответы,

НП, Иван FXS

Ответить

Номер ответа: 5
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #5 Добавлено: 09.01.03 09:50

Правда не знаю:))) Не разбирать же их долбагером в самом деле...:) А собственно к чему это все? Если нужен контрол, который бы позволил использовать VBA в собственных проектах, то я могу выслать(только не сегодня).

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам