KONVERZE CSV SOUBORU

Databáze (DB) zboží pro e-shop se často spravuje v Excelu a dále se exportuje do e-shopu pomocí konverze do souboru CSV. Je to textový soubor, kde jsou pole odděleny oddělovačem, nejčastěji středníkem, každý záznam je na jednom řádku. Kód zboží by měl být text, ale může to být i číslo formátované na text. Při ukládání DB z Excelu do souboru CSV je vše v pořádku, pokud ale chceme načíst zpět soubor CSV do Excelu, snaží se Excel vše co má číselný charakter převést na číslo. Např. text "14570Xyz13" se načte správně, ale text "1081114001000"se načte jako číslo v exponenciálním tvaru "1,08111E+12" a tím je DB znehodnocena.
POZOR: Při konverzi do CSV jsou problémy s češtinou, ale to je jiná záležitost!

Náprava je dost pracná:
1. změníme příponu CSV na TXT
2. datový soubor otvíráme v Excelu, který spustí průvodce otevřením textového souboru
3. v 2. kroku průvodce musíme nastavit oddělovač jen středník
4. ve 3 kroku průvodce musíme nastavit textový formát pro příslušné pole
5. po načtení ve vhodné datový soubor uložit a pomocný textový soubor odstranit

Proto jsem vytvořil makro OtevritCSV viz sešit OtevritCSV.xls, které vše udělá za nás.
1. pomocí dialogového okna Otevřít vybere CSV soubor
2. změní příponu
3. otevře soubor se správným formátováním
4. uloží jako CSV
5. odstraní pomocný soubor TXT
6. zamezí zobrazování otravných oken "Opravdu uložit, opravdu odstranit..."

Makro je dobře komentované, vytvořil jsem ho záznamníkem a upravil přidáním dialogového okna, přejmenováním souboru, uložením datového souboru a smazáním již nepotřebného textového souboru. Vlastnost DisplayAlerts brání zobrazování otravných oken.

Chybné načtení manuálně příkazem z menu Soubor/Otevřít, Typ souboru CSV

kod nazev ks cena
3,33333E+12 pantofle 300 155
ABCDEFxyz123 backory 444 205
14570Xyz13 sandale 120 680
1,08111E+12 polobotky 500 999
1,11111E+12 strevice 200 899

Správné načtení makrem OtevritCSV

kod nazev ks cena
3333333333333 pantofle 300 155
ABCDEFxyz123 backory 444 205
14570Xyz13 sandale 120 680
1081114001000 polobotky 500 999
1111111111111 strevice 200 899

Stažení souboru

Zpět na hlavní stránku