Wdrażam wczesny związany styl VBA, który wymaga Scripting.Dictionary i RegExp.Jak programowo dodać odwołanie do projektu VBA?
Scenariusz, zgodnie z przewidywaniami, nie działa, gdy działa na innym komputerze. Użytkownik musi przejść do Tools-> Reference w VBA IDE i ręcznie dodać odniesienie do tych dwóch bibliotek, aby to działało.
Z tego wynika problem. Poproszenie nietechnicznego użytkownika końcowego o przejście do IDE i ręczne dodanie referencji, pyta o zbyt wiele z nich.
Inną alternatywą jest przepisanie całego (bardzo długiego skryptu napisanego przez kogoś innego), aby użyć późnego wiązania. Raczej nie podążam tą ścieżką, jeśli istnieją inne metody.
Jako altervative niektórzy ludzie sugerują dodanie odniesienia programowo tak:
Application.VBE.ActiveVBProject.References.AddFromFile [Path to library]
- Jest to poprawne rozwiązanie, a jeśli tak, to czy są jakieś wady tej strategii?
- Jeśli nie, czy istnieją inne metody, które umożliwią pozostawienie kodu na wczesnym poziomie, ale nie będą wymagały ręcznego dodawania referencji przez użytkownika.
Zapraszamy również na sugestie dotyczące bezpośrednich połączeń z interfejsem Win32/64 API.
Dzięki.
Jedyną wadą, jaką mogę sobie wyobrazić, to przejście na trasę VBE, ponieważ użytkownik musi w szczególności umożliwić programowy dostęp do modelu projektu VBA. Drobny problem. Taką drogę bym wziął, gdybym był w twoich butach. –