Udostępnij za pośrednictwem

Plik .xlsm który wcześniej działał w excelu 2007, przestał poprawnie działać po zapisaniu w excelu 2016

Anonimowe
2016-07-25T11:58:50+00:00

Dzien dobry,

Mam plik .xlsm z makrami utworzony i używany w excelu 2007. Po otwarciu pliku w excelu 2016 i zapisaniu (bez żadnych zmian), plik częściowo przestaje działać w excelu 2007. Przestały działać wszystkie pola wyboru - wyglądają jakby w ogóle nie były polami wyboru, tylko zwykłymi komórkami. Nie dzała w nich sprawdzanie poprawności danych, można wpisać dowolną wartość.

Co zrobić, żeby plik .xlsm edytowany w excelu 2016 w całości poprawnie działał również w excelu 2007, łącznie z polami wyboru? (Plik modyfikuje osoba pracująca w excelu 2016, ale korzystają z niego również inne osoby pracujące w excelu 2007.)

Próbowałem już wyłączenia funkcji widoku chronionego. Nie mogę zapisać pliku w formacie excela 2003, bo wtedy utracę inne jego elementy. 

Pozdrawiam,

Łukasz Żebrowski

Microsoft 365 i Office | Excel | Do użytku domowego | Windows

Pytanie zablokowane. To pytanie zostało zmigrowane ze społeczności pomocy technicznej firmy Microsoft. Możesz zagłosować, czy pytanie jest pomocne, ale nie możesz dodawać komentarzy ani odpowiedzi, ani też śledzić pytania.

Komentarze: 0 Brak komentarzy
Liczba głosów: {count}

Odpowiedzi: 2

Sortuj według: Najbardziej pomocne
  1. Oskar Shon 49,301 Punkty reputacji Moderator wolontariuszy
    2016-07-25T14:48:40+00:00

    Załóżmy że na komputerze z 2007 masz uruchomione makra z opcjach i tworzenie jak i uruchamianie takich plików utworzonych w tej wersji nie nastręcza żadnych problemów.

    Generalnie format XMLowy działa od wersji 2007, a więc nie powinieneś mieć problemów z otwarciem pliku w tym standardzie z makrami, pochodzącymi z nowszej wersji. Najprawdopodobniej to problem twojej maszyny. Coś może uszkadzać ci pliki lub też zawiera on takie elementy, z nowej wersji, które nie chcą się uruchomić na starszej.

    Nie jest wiele takich obiektów i jeśli było by odwołanie do nich kodem to debuger "wywalił" by błąd.

    Z pewnością nie są to pola wyboru.

    Ustaw w modułach polecenie sprawdzania deklaracji zmiennych Option Explicit

    Umieszcza się go na początku moduły czy formularza.

    Można to ustawić w środowisku VBE w opcjach:

    Dodatkowo możesz uruchomić debugowanie aby sprawdzić czy nie ma krytycznych błędów w kodzie.

    Może to być powód nie uruchamiania się kodu "w cale".

    Następną sprawą może być brak kontrolek. Jednakże powinieneś otrzymać jakieś komunikaty, o których wcale nie piszesz. Tutaj masz artykuł na ten temat: http://vbatools.pl/czy-moj-system-wspolpracuje-z-kontrolkami-cc/

    Komentarze: 0 Brak komentarzy
  2. Anonimowe
    2016-07-26T09:14:09+00:00

    Dzień dobry,

    Dziękuję za odpowiedź. Niestety nadal nie udało się rozwiązać problemu.

    Najprawdopodobniej to problem twojej maszyny.

    Ten sam problem był po zapisaniu pliku na innym komputerze z excelem 2010.

    Coś może uszkadzać ci pliki lub też zawiera on takie elementy, z nowej wersji, które nie chcą się uruchomić na starszej.

    W pliku nic nie zmieniam, tylko go otwieram i zapisuje nowszą wersją excela (normalnie 2016, ale próbowałem też 2010 na innym komputerze), więc nie powinno być w nim nic, co nie działa pod 2007.

    Ustaw w modułach polecenie sprawdzania deklaracji zmiennych Option Explicit

    Dodatkowo możesz uruchomić debugowanie aby sprawdzić czy nie ma krytycznych błędów w kodzie.

    Sprawdziłem i niestety to nie pomogło. Wydaje mi się, że makra w ogóle nie są problemem, bo akurat one działają bez problemu, po zapisaniu pliku w wersji 2016. Sprawdziłem też plik z usuniętymi makrami. Niestety problem z psującymi się polami wyboru pozostał.

    Następną sprawą może być brak kontrolek.

    Żadnych komunikatów nie było, ale rzeczywiście brakowało w folderze C:\Windows\SysWow64 plików mscomctl.ocx i mscomct2.ocx. Dodałem je, zarejestrowałem, ale nadal to nic nie pomogło. Zarejestrowałem pliki z pakietu XL2010, bo nie znalazłem pakietu dla 2016.

    Niestety nadal problem pozostaje nierozwiązany: po zapisaniu pliku (bez zmian) w nowszej wersji excela (2016 lub 2010) i otwarciu go w excelu 2007, przestają działać pola wyboru.

    Pozdrawiam,

    Łukasz Żebrowski

    Komentarze: 0 Brak komentarzy