Czy jest możliwe aby wersja językowa Excela była przyczyną „wykrzaczenia” się makra? Otóż tak! W tym artykule opiszę dwa przypadki, w których przełączenie wersji Excela z angielskiej na polską wygenerowało błędy w kodzie.
Nazwy pól
Pierwszy przypadek dotyczy pracy z popularnym pivotem..
Pamiętam, że chciałem posortować dane w tabeli przestawnej według wartości zamówienia. Standardowo w wersji angielskiej sortowane pole nazywało się Sum of Wartość zamówienia podczas gdy w wersji polskiej była to Suma z Wartość zamówienia.
Przełączenie wersji Excela z angielskiej na polską spowodowało błąd w makrze. Musiałem nadać własną nazwę temu polu.
Nazwy stylów
Drugi problem również dotyczy stosowanego nazewnictwa. Tym razem jednak pojawił się w trakcie pracy ze stylami, z których osobiście bardzo często korzystam.
Część danych chciałem sformatować wbudowanym stylem 20% – Accent1 i wydawało mi się, że nie ma z tym najmniejszego problemu. Dopiero korzystając z polskiej wersji Excela przypadkowo odkryłem, że makro generuje błąd…
Sprawdziłem i okazało się, że polska nazwa tego stylu to 20% – akcent 1. Czyli wygląda podobnie, ale widać kilka różnic. Poza spolszczeniem słowa kluczowego widzimy, że cyfra została odseparowana od tego słowa, a sam klucz w polskiej wersji zaczyna się małą literą.
Zdecydowałem, że aby nie komplikować sytuacji utworzę własny styl, który będzie wyglądał właśnie jak 20% – Accent1. Nadałem mu nazwę 20% – Akcent1 i mogę korzystać z niego w dowolnej wersji językowej Excela.
Reasumując, uważam, że nie ma sensu korzystać z wbudowanych stylów w makrach ze względu na problemy z nazwą. Lepiej utworzyć na bazie już wbudowanego własny styl i nadać mu (bliźniaczo) podobną nazwę.
Jak widać – wersja językowa Excela ma znaczenie.