Konwersja Excela do pliku CSV w powershellu

Konwersja Excela do pliku CSV w powershellu

Powershell + plik CSV = „sky is the limit” ale…

Użytkownik końcowy woli jednak pracować w oparciu o Excela i niekoniecznie chce mu się konwertować go do pliku CSV. Administrator z kolei nie chce na to tracić czasu, bo ma ważniejsze zadania do realizacji 🙂

Dla mnie najwygodniej uruchamia się skrypty będąc w lokalizacji, gdzie jest skrypt i podając do niego ścieżkę z parametrami w postaci .\skrypt.ps1 .\plik_wejściowy

Aby zautomatyzować przekształcanie plików Excela do plików csv, które następnie będą obrabiane i przetwarzane w skrypcie można wykorzystać następującą funkcję:

 

Działa sprawnie w przypadku odpalania skryptów powershell’owych oraz Excela z tej samej lokalizacji w strefie DFS (\\twoja.domena\fileshare\skrypty\…)

Jako parametr wejściowy podawana jest ścieżka do pliku na zasobie, gdzie umieszczony jest skrypt oraz wejściowy Excel. Wyjściem jest ścieżka do zapisanego pod ta samą nazwą pliku csv, który następnie można zaimportować:

1. Przypisanie do zmiennej $plik ścieżki do utworzonego pliku csv na podstawie parametru wejściowego skryptu (pliku Excela) – $file

2. Pobranie zawartości pliku csv do zmiennej $Dane

 

2 thoughts on “Konwersja Excela do pliku CSV w powershellu

  1. Cześć Ziemku,
    Szczerze powiedziawszy nigdy nie miałem konieczności konwertowania plików Excela na stacji, gdzie nie byłoby go zainstalowanego – ale skoro wywołałeś mnie do tablicy to czuję się zobowiązany żeby za jakiś czas rozgryźć temat i wrzucić nowego posta nt. konwersji bez instalacji Excela 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *