2008-10-30 15 views
5

Posiadam działający skoroszyt programu Excel, który ma kod VBA i makra, aby pomóc w wprowadzaniu danych.Program Excel nie może włączyć referencji/brakujących funkcji

Używam kalendarza do przechwytywania dat i odczytu danych z komórek. Aplikacja działa w 100% na mojej maszynie (aplikacja opracowana w 2007, ale zapisana jako .XLS – 97/2000 dla zgodności w biurze). Gdy przekazuję plik innym osobom, kontrola kalendarza i funkcja TRIM() nie działają.

Na moim komputerze mogę dostać się do działu referencji, ale na wszystkich innych maszynach w biurze funkcja references jest wyszarzona. Każdy pomysł, dlaczego wspólny obiekt, taki jak kalendarz i wspólna funkcja, taka jak trim(), nie działa na niektórych komputerach.

Odpowiedz

2

Sterowanie kalendarzem ma wiele różnych wersji, należy go zbudować z wersji, którą mają na swoim komputerze.

3

Czy odniesienia są wyszarzone w nowym skoroszycie na innych komputerach? Odnośniki są zwykle wyszarzone, gdy kod jest uruchomiony. Kontrola kalendarza była (jest?) Znana z tego, że nie działała w różnych wersjach, więc opracowano różne rozwiązania, takie jak Allen Browne's calendar pop-up. Trim jest częścią Visual Basic for Applications i prawdopodobnie zauważysz, że funkcja jest naprawiona, gdy pozbędziesz się brakującego odniesienia do kalendarza.

0

VBA automatycznie zaktualizuje odniesienia do najnowszej wersji. Przykład: jeśli odwołuję się do pakietu Office 10.0 i posiadasz pakiet Office 12.0 na komputerze, odniesienie zostanie automatycznie zaktualizowane z dziesięciu do dwunastu. Ale obniża je o nie. Jeśli więc masz odniesienie do pakietu Office 12.0 i wdrażasz go na komputerze, na którym jest tylko pakiet Office 10.0, kod zostanie złamany.

Są na to dwa sposoby. Jeśli chcesz pozostać przy wczesnym oprawianiu, musisz uzyskać kopię najstarszej wersji używanej biblioteki. Następnie odwołaj się do tego pliku.

Alternatywą jest późniejsze wiązanie. Jednak może to być trochę trudniejsze z wbudowanymi kontrolkami.