1. Úvod
2. Validujeme soubor GPX
3. Počítáme základní elementy v GPX
4. Import Waypointů z GPX do XLS
5. Import Stop z GPX do XLS
Úvod
Většina zařízení Garmin umožňuje zaznamenává oblíbené položky (waypointy), trasy a stopy (tracklogy) do souboru gpx, se kterým můžete pracovat např. v aplikaci MapSource. GPX soubor je v podstatě dokument XML, který má pevně danou strukturu, která není nijak komplikovaná - zkuste si GPX soubor prohlédnout například v textovém editoru. Pokud máte potřebu data ze souboru GPX analyzovat podrobněji a nevíte jak na to, můžete například využít tabulkový procesor MS Excel, který je pro analýzu ideální.
Otázkou je, jak data z GPX souboru do Excelu přenést. Na výběr máte několik možností. Například využijete konverzní program GPSBabel a soubor převedete do jiného formátu, např. CSV. Také samotný MapSource umožňuje GPX soubor uložit do TXT. Cest je vždy několik, ale není nad vlastní řešení.
V následujícím si ukážeme možnosti parsování GPX přímo v aplikaci MS Excel. Budeme k tomu potřebovat alespoň základní znalosti o skriptování ve VBA (začátečníci zvládnou také) a XML parser od společnosti Microsoft, který je volně dostupný ke stažení.
Nutné podmínky pro parsování XML v Excelu
Pro parsování gpx v Excelu je nutné splnit tyto tři základní podmínky:
1) Povolte v Excelu makra:
Excel 2007: Tlačítko Office > Možnosti aplikace Excel > Centrum Zabezpečení > Nastavení Centra Zabezpečení > Nastavení Maker > Zakázat všechna makra s oznámením
Excel 2003: Nástroje > Makro > Zabezpečení… a zvolte "Střední"

2. Nainstalujte poslední verzi Microsoft XML parser v6 (MSXML6.0):
Zde je odkaz: MSXML 6.0
3. V MS Excel nastavte reference na Microsoft XML parser::
- spusťte Excel a přejděte do editoru VBA (ALT + F11)
- v editoru VBA zvolte v nástrojové liště Tools > References... a zatrhněte Microsoft XML, v6.0

Tímto jsou tři základní podmínky splněny a můžeme se pustit do práce. V následujícím příspěvku si ukážeme, jak lze pomocí MSXML validoval soubor GPX.
Začátečníci: Pokud jste ještě nikdy nepsali skript ve VBA (Visual Basic for Applications), zkuste si teď vytvořit obligátní první program, který zobrazí zprávu "Ahoj Světe". Spusťte Excel a přejděte do editoru VBA (klávesy ALT + F11) a z nabídky zvolte Insert > Module a vložte následující kód:
- vba Code: Vybrat vše
Sub MujPrvniProgram()
' deklarace proměnné sText (řetězec)
Dim sText As String
' do proměné sText vložíme řetězec (string) Ahoj Světe!
sText = "Ahoj Světe!"
' zobrazíme dialogové okno MsgBox s námi definovaným textem
MsgBox sText, , "Moje první zpráva"
End Sub
Procedury začínají klíčovým slovem Sub a pak následuje samotný název procedury, který musí být jedinečný a bez mezer. Konec procedury končí klíčovým slovem End Sub. Tento program spustíte tak, že umístíte kurzor do těla procedury a stisknete klávesu F5. Pro krokování (řádek po řádku) použijte klávesu F8. V Excelu jsou tyto procedury označované jako Makra. Nyní máte alespoň základní představu, jak makra fungují.