Dzisiejszy felieton poświęcimy problemowi (a właściwie braku tegoż problemu) komunikacji arkusza ze światem zewnętrznym. Doświadczeni użytkownicy wiedzą, jak prosto można go otworzyć z dysku, zapisać pod inną nazwą, a nawet, wysłać pocztą elektroniczną.

 

Excel posiada bardzo rozbudowane możliwości importu oraz eksportu danych z/do innych aplikacji.

 

Otwieranie z dysku jest tematem banalnym, nie warto się nim zajmować. Ale, czy wiecie państwo, że okienko Otwórz Excela może tworzyć nam kopie istniejących plików bez otwierania ich? Dysponujemy, załóżmy, arkuszem, obliczającym wynik finansowy stycznia, wystarczy teraz otworzyć okienko Otwórz i wybrać Otwórz jako kopię. W tym samym oknie można naszej nowej kopii z marszu nadać odpowiednią nazwę i dopiero otworzyć do edycji (Mamy wtedy np. gwarancję, że nie zepsują się nam łącza międzyskoroszytowe, jak może się to stać podczas klasycznej operacji Otwórz-Zapisz Jako. Poza tym wszystkie opcje Eksploratora Windows (tylko w nowszych wersjach Windows) są tu dostępne, łącznie z pakowaniem, nagrywaniem na CD i wysyłaniem plików.

 

Dane w Excelu można po prostu otworzyć (lub w drugą stronę – zapisać).

W okienku Otwórz wybrać możemy również format (Lista : Pliki typu) otwieranego pliku, bowiem mogą to być nie tylko pliki Excela.

 

Rys.1. Dostępne formaty plików w okienku Otwórz Excela (początek listy).

 

Warto przyjrzeć się niektórym z tych typów (nie wszystkie są warte uwagi):

1. Wszystkie Pliki MS Excel – opcja domyślna, proszę jednak zauważyć jako ciekawostkę, że Excel filtruje tu również np. pliki html

2. Strony sieci Web – jeżeli strona HTML zawiera np. tabelę, Excel bez problemu ją importuje, zarówno z dysku lokalnego, jak i strony Internetowej.

3. Pliki tekstowe, zarówno wydruki TXT i PRN, jak i pliki CSV (o imporcie plików tekstowych szerzej w dalszej części.

4. Pliki kwerend, również internetowych (!), również OLAP (!) – to opcja ciekawa i warta uwagi! Przydaje się w następującej sytuacji: Różne komputery w sieci używają tych samych danych sieciowych, tj. kwerendy MS Query. Gdyby używały wspólnego pliku z kwerendą, MS Query psułby się, bowiem arkusz zapisuje odwołanie do programu, a ten na każdym komputerze jest inny. Jeżeli natomiast kwerendę w MS Query zapiszemy jako plik kwerendy, a nie jako plik danych, możemy ją otwierać na różnych komputerach bez problemu. Co to jest MS Query i do czego służy – w dalszej części naszego cyklu.

5. Pliki w formacie DBF – bardzo popularny format przechowywania danych, a dla aplikacji „DOSowych” często format podstawowy. Być może nasza aplikacja ewidencyjna również go używa? Ale, zanim otworzymy plik DBF tejże aplikacji, skonsultujmy się z firmowym informatykiem – Excel dużo potrafi, zepsuć dane również!

6. Dodatki MS Excel – wykorzystamy to przy programowaniu Excela pod koniec naszego cyklu. Gdy chcemy zapisać dodatek, niektóre wersje Excela kierują nas do katologu dodatków Office’a, trudno go tam potem znaleźć, ale można go np. skopiować i umieścić w dowolnym miejscu na dysku.

7. Szablony Excela – zostaje otwarta kopia tego szablonu jako nowy plik. 8. Kopie zapasowe – gdy skoroszyt Excela nam się zepsuje w trakcie pracy, zawsze możemy wrócić do jego poprzedniej wersji, zapisywanej jako kopia zapasowa – możemy to zrobić z poziomu Excela, nie zamykając go (Opcja autozapisu zostanie omówiona dalej).

9. oraz, oczywiście, formaty arkuszy kalkulacyjnych innych producentów, jak Lotus 1-2-3 czy Quattro-Pro. Tu jednak o wiele lepiej zdać się na sterowniki tegoż producenta, Excel poprzestał na imporcie tylko ich pierwotnych wersji i często te arkusze psuje.

10. XML (! Tylko w Excelu XP /niedopracowane/ oraz najnowszym Excelu 2003 – dopracowane, łącznie z obsługą schematów XSD. To, proszę mi wierzyć, rewolucja!) Większość nowoczesnych systemów bazodanowych eksportuje swoje dane do tego formatu, usługi sieciowe na nim bazują, jest to jeden z „najchudszych” formatów zapisu danych. Ale, raczej dla informatyków, więc my temat pomijamy.

 

Dane do Excela możemy również „przekleić”. Wystarczy, będąc np. w przeglądarce internetowej, zaznaczyć myszą, interesującą nas tabelę danych, wykonać „Kopiuj”, otworzyć Excela, i wkleić dane. Działa to również z grafiką, linkiem, tekstem. Schowek to narzędzie przydatne – warto z niego korzystać. Jeżeli przeklejamy dane z tabel plików HTML, Worda, Power Pointa, czy np. Accessa, Excel ustawia dane również w tabeli – bo arkusz cały jest tabelą i robi to poprawnie, łącznie z zachowaniem odp. formatów..

 

Dane do Excela możemy zaimportować z pliku tekstowego.

Pomimo dość znacznego rozbudowania tej procedury, osobiście uważam jej użycie za niecelowe. Działa zwykle źle, pomimo nawet możliwości zapisania definicji takiego odczytu w najnowszych wersjach Excela.

 

Wybierzmy z menu dane, opcję Pobierz dane zewnętrzne, a po rozwinięciu dodatkowego podmenu, opcję Importuj plik tekstowy. Wybieramy plik do zaimportowania, np. przygotowany wstępnie plik C:\GazetaPrawna\KursExcela\Dane\RK_2001.txt .

Jest to spreparowany w celu pokazowym plik tekstowy (tzw. przykład prosty), w rzeczywistości import tekstu jest, niestety trudniejszy.

 

Rys.2. Kreator importu pliku tekstowego

 

Dalej dzielimy plik na kolumny, ustawiając myszą miejsca podziału, według instrukcji w oknie.

 

Rys.3. Kreator importu pliku tekstowego c.d.

 

Przez kolejny, 3. z kolei krok kreatora przechodzimy, naciskając przycisk Dalej. Jak się okaże, będziemy zmuszeni do niego i tak powrócić.

Kolejny (ostatni) krok kreatora, pozwala nam wskazać miejsce, gdzie dane należy umieścić i … gotowe. Właśnie, czy gotowe? Okazuje się, że w kolumnach „numerycznych”, dane absolutnie numeryczne nie są (widać to po dosunięciu przez Excela wartości do lewej krawędzi komórki, np. wartość 2.829,29), a w kolumnach z oznaczeniami dowodów oraz numerami kont, niektóre wartości są z kolej zamieniane na numeryczne (do prawej, np. konto 490).

 

Rys.4. Zaimportowane dane w arkuszu (ustawienia domyślne kreatora)

 

Nie pozostaje nam nic innego, jak edytować naszą procedurę importową. Gdy na obszarze zaimportowanego tekstu klikniemy prawy przycisk myszy, pojawia się opcja Edytuj import tekstu – wybieramy ją i postępujemy analogiczne do sytuacji, określonej poniżej.

 

Rys. 5. Kreator importu pliku tekstowego (ustawienia)

 

Widzimy to okno już drugi raz. Pierwszy raz nie mogliśmy się domyśleć, co w naszym imporcie może się zepsuć – teraz już wiemy. Dopasowujemy więc ustawienia: Klikamy kolejno wszystkie (pierwsze 4 i ostatnia) kolumny i wybieramy opcję Tekst w prawym-górnym rogu okna. Kolumny numeryczne pozostawiamy w formacie Ogólny. Uważny czytelnik zauważy, że kolumnę dat również poleciłem zaimportować jako tekst, chociaż jest opcja importu daty. Gdy dane są w Excelu, łatwiej obrabia się daty, gdy są tekstem. Domyślnie data w Excelu jest liczbą i żeby się dowiedzieć rok tej daty trzeba zastosować funkcję =ROK(), co komplikuje nam arkusz.

Poprawiliśmy pola tekstowe, musimy jeszcze uwzględnić błąd w imporcie pól numerycznych. Służy do tego przycisk Zaawansowane…, gdzie Separator dziesiętny ustawiamy (jest domyślnie) na przecinek, a Separator tysięczny na kropkę.

Potwierdzamy wszystkie zmiany i kończymy pracę kreatora. Dopiero teraz efekt jest poprawny. Podobny do zaprezentowanego na Rys.4., ale dane są sformatowane jak należy.

 

Dane z Excela można eksportować.

Zajmiemy się teraz nietypowymi opcjami zapisu danych przez Excela. Standardowe typy zostały pokrótce omówione wyżej, ale nasze potrzeby, dotyczące zapisu, mogą być bardziej wyrafinowane. Np. Jak zapisać tylko dane? Jak zapisać (wykonać?) stronę internetową z arkusza Excela?

 

Zapisujemy arkusz danych w formacie DBF (i XML)

Wybieramy: Plik / Zapisz Jako / Zapisz jako typ: DBF (nazwa dowolna) i potwierdzamy.

Excel pyta o zmianę formatu, potwierdzamy i gotowe. Plik w innym formacie danych został zapisany! Uwaga jednak na szczegóły.

1. Przed zapisem jako DBF należy skoroszyt – jeżeli chcemy go zachować – zachować w formacie Excela, format DBF zapisuje tylko bieżący arkusz.

2. Plik DBF z naszego arkusza z zimportowanym wcześniej plikiem tekstowym nie ma ustawionego formatu numerycznego w kolumnach danych, aby nie zgubić groszy, sformatujmy przed zapisem kolumny danych numerycznych na format liczbowy z dwoma miejscami dziesiętnymi (przypominamy: [Ctrl+Shift+1]).

Proszę sprawdzić efekt naszego zapisu, otwierając stworzony plik DBF z dysku.

 

Bardzo podobnie postępujemy w najnowszym Excelu 2003 z zapisem w formacie XML.

 

Zapisujemy skoroszyt, arkusz lub jego wybraną część jako stronę internetową.

Jest to idealny sposób na prezentację naszych wysiłków dla klienta (np. dyrektora), który Excela nie posiada. Ale trzeba posiadać zainstalowany pewien dodatek do Excela (Office’a), który nie instaluje się automatycznie – tzw. Office Web Components (OWC) (plik msowc.cab, pomoże firmowy informatyk).

 

Zapis arkusza nie stanowi problemu, bo po wybraniu opcji Zapisz jako stronę HTML z menu Plik dzieje się to niejako automatycznie. Ale OWC posiada o wiele więcej możliwości!

Potrafi zapisać interaktywny Autofiltr Excela (lista możliwością dowolnego filtrowania) w Internecie lub tamże interaktywną tabelę przestawną! Przy czym funkcjonalność tych stron nie odbiega zbytnio od funkcjonalności tabeli przestawnej w samym Excelu, a w przypadku Autofiltru jest nawet większa (grupuje rekordy)!

Aby tego dokonać na tabeli przestawnej musimy wykonać kilka kroków dodatkowych. Na tabeli klikamy prawym przyciskiem myszy, wybieramy opcję Zaznacz/Cała Tabela po czym z menu Plik wybieramy Zapisz jako stronę HTML.

 

Rys. 6. Zapis tabeli przestawnej jako strony HTML.

 

Rys.7. Tabela przestawna w przeglądarce internetowej

 

Wymieniamy dane z innymi użytkownikami.

Arkusz kalkulacyjny stał się już dawno standardem wymiany danych pomiędzy pracownikami biurowymi. Łatwo go wysłać pocztą elektroniczną.

 

Rys.8. Wysyłanie skoroszytu Excela pocztą elektroniczną (bezpośrednio z Excela)

 

 

Podsumowanie:

Arkusz kalkulacyjny posiada, sam w sobie, wbudowane metody prostego importu danych zewnętrznych w podstawowych formatach. Jeszcze lepiej prezentuje się jednak możliwość eksportowania danych, a nawet ich publikacja w Internecie.

 

Test umiejętności:

  1. Otworzyć dowolną stronę internetową, zawierającą tabelę z danymi (np. dane giełdowe, wskaźniki księgowe), zaznaczyć, tabelę i przekopiować dane do Excela.
  2. Zaimportuj dowolny plik tekstowy i spróbuj doprowadzić go do maksymalnie czytelnej postaci w arkuszu.
  3. Sporządź tabelę przestawną z danych …\Dane\Handel\Faktura.dbf, tzn. otwórz plik faktura.dbf, sporządź na nim tabelę przestawną i zapisz jako strona HTML.