Ebben a cikkben egy olyan egyszerű, ám mégis hasznos trükköt fogok bemutatni, melynek segítségével elkerülhető, hogy az Excelben megnyitott szöveges állományok (txt, csv file-ok) egyes értékei indokolatlanul dátumokká alakuljanak.
A napi munkám során számos esetben találkozom olyan excel-adattáblákkal, melyekben a megnyitást követően megdöbbenve tapasztalom, hogy például egy cím adat házszáma helyén egy dátum éktelenkedik. Ha ez tömegével fordul elő, joggal feltételezheti az ember, hogy a forrás file eredetileg egy szöveges állomány volt, amit az adattáblát készítő személy meglehetősen felületesen dolgozott fel.
Talán az egyik leggyakoribb hiba az, amikor a szöveges állományok megnyitását közvetlenül az Excelre, nem pedig valamilyen célszoftverre bízzuk (pl. Notepad ++, Sublime Text stb.), és így megnyitott file-t mentjük el xls/xlsx formátumba. Az Excelnek van sajnos (legalábbis szerintem) egy olyan tulajdonsága, hogy alapból minden – írásmódját tekintve dátumnak tűnő – értéket dátummá alakít. Erről pedig igen nehéz „leszoktatni”. Így lesz például a Kossuth L. u. 23/1-ből, Kossuth L. u. jan. 23.
Természetesen ezt el lehet kerülni, csak helyesen kell eljárni, és az Excel szöveges file-ok importálására szolgáló funkcióját kell használni. Ez Excel 2007-ben ill. az afeletti verziókban az Adatok / Külső adatok átvétele / Szövegből menüpontban érhető el. A felugró ablakban a kódkészlet, majd a megfelelő mező-tagoló karakter (szeparátor) megadását követően, még egy fontos teendő van: az oszlop adattípusának beállítása.
Én az esetek döntő többségében, az egyszerűség kedvéért az összes mezőt kijelölöm egy mozdulattal, és az oszlop adattípusát „Szöveg”-re állítom. A kijelölést úgy lehet a leggyorsabban megtenni, hogy a SHIFT-et lenyomva tartjuk és a bal egérgombbal ráklikkelünk az utolsó mezőre. Ha ezt a lépést kihagynánk, vagy az adattípust „Általános”-on hagynánk, akkor kb. ugyanoda lyukadnánk ki, mint korábban, és az importált értékek – nagy valószínűség szerint – rosszul jelennének meg. Ha ez megvan, bátran megnyomhatjuk a „Befejezés” gombot, minden érték a forrásfile-lal megegyező módon fog megjelenni.
Figyelem!
Ha a forrás file minden mezője szövegtípusúként került behúzásra az Excelbe, egy hátránnyal számolni kell. Új oszlop beszúrásakor az abba írt képletek csak akkor értékelőnek ki, ha az adott mező adattípusát pl. „Általános”-ra állítjuk, belekattintunk a képletbe és ismét ENTER nyomva újraértékeltetjük.
Természetesen léteznek más megoldások is, melyek ugyanúgy helyes megjelenítést eredményeznek, de elég ha egyet ismer az ember (lehetőleg minél egyszerűbbet, és gyorsabbat), és nem fogják meglepetések érni.