Pracując z arkuszami przesyłanymi mi przez osoby pracujące w MS Office często natrafiam na różnice w interpretacji funkcji. Dzisiaj znalazłem jeszcze jedną, bardzo uprzykrzającą życie. Nie jestem pewny, czy problem leży w Open Officie czy też MS Excel, dlatego tez próbuję pokrótce opisać o co chodzi. Przeprowadźmy proste doświadczenie symultanicznie w Excelu (wersja 2007) i Calcu (wersja 2.3)
- Bierzemy funkcję MID() (lub też Fragment.tekstu() w polskim MS Excel). Funkcja służy do wyodrębniania z łańcucha tekstowego dowolnego ciągu znaków . Jej wynikiem zgodnie z opisem ma być łańcuch tekstowy o zadanej długości. W naszym przykładzie jest to wyodrębnienie z komórki A1 trzeciego znaku w ciągu liczb. Wynik zapisywany jest w komórce B1. Jak wskazuje formatowanie w obu przypadkach jest to tekst.
- W komórkę E1 wstawmy funkcję CHOOSE() (Wybierz()), która z liczb zdefiniowanych w kolumnie I ma wybrać liczbę wskazaną przez wartość z komórki B1 (dla przypomnienia – jest nią wynik działania poprzednio opisanej funkcji).
- Jak widać na załączonych obrazkach – w MS Excel funkcja zadziałała, w Calc – błąd Err:511.
![]()
Oczywiście jest proste rozwiązanie tego problemu – wystarczy funkcję MID() “otoczyć” funkcją Value(), dzięki czemu otrzymamy liczbę a nie tekst. Ale nie o to chodzi – przykład powyższy pokazuje, że tak niewielka różnica w sposobie przyjmowania zmiennych powoduje różnice w funkcjonalności arkusz. Muszę sobie poprawiać raporty ręcznie, lub tez używać Excel Verwera bądz MS Offica. Swoją drogą – funkcja zaimplementowana w Excelu wydaje się bardziej “inteligentna” i wybacza użytkownikowi błąd w zdefiniowaniu przekazywanych pomiędzy funkcjami zmiennych.




maj 1, 2008 o 9:50 am |
Warto wiedzieć ;]
Dzięki za informacje