Excel file merge

Néha jól jönne, ha sok külön excel fájlt, egy nagy excel fájlban lehetne látni. Erre vannak mindenféle fizetős eszközök (mind lehúzás), az excel is csinál valamit, de egyik sem az igazi.

Ha programozni akarunk írhatunk rá pár nap alatt egy java programot, ha nem akarunk, akkor a lenti script segíthet…

#!/bin/sh

#environment setup: http://software.krimnet.com/xls2csv/guide-converting-xls-files-csv-with-xls2csv-ubuntu.htm

rm result.csv

cat files.txt | tr -d "\015" | while read XLS_FILE
do
if [ $XLS_FILE == "--EOF--" ]
then
break
fi

echo Processing xls $XLS_FILE
XLS_FILE_SNAME=`basename $XLS_FILE`
cat sheets.txt | tr -d "\015" | while read SHEETS
do
if [ $SHEETS == "--EOF--" ]
then
break
fi

xls2csv -x $XLS_FILE -w $SHEETS -b UTF-8 -c tempsheet.csv
cat tempsheet.csv | grep -v "Projekt azonosító" | LANG=hu_HU.UTF-8 sed "s/^.*\$/${XLS_FILE_SNAME};${SHEETS};&/" | LANG=hu_HU.UTF-8 sed "s/\./,/g" >> result.csv
rm tempsheet.csv
done
done

A files.txt fájlból olvassa a konvertálni kívánt fájlok neveit, –EOF– -ig. Pl: :
a.xls
b.xls
–EOF–

Leave a Reply