Elektroda.pl
Elektroda.pl
X
e-miernikie-mierniki
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

excel import plików csv do Excela

13 Mar 2015 23:34 1941 8
  • Poziom 6  
    EXCEL - Import danych z wielu plików CSV do excela
    Proszę o pomoc w stworzeniu programu VBA działający w Excelu. Jestem zupełnie zielony w tworzeniu jakichkolwiek programów.
    Przyrząd do pomiaru napięcia na dwóch wejściach tworzy pliki o nazwie Pomiar_N.csv,
    ( N – kolejne pliki z pomiarami, około 87 na dobę), z 1000 pomiarów, w 1000 sekund. Zapisane dane są uśredniane co 500 sekund, załączam przykład pliku. W tabeli mającej 1001 wierszy i 7 kolumn, są tylko 2 wiersze znaczące, np.: 1 i 501, resztę pomiarów różni się tylko datą i godziną. Z każdego pliku chcę przenieść te dwa wiersze, na kolejne wolne wiersze, do pliku Suma_N.xls, arkusz1. W arkuszu Excela przeniesione dane liczbowe, część dziesiętną mają oddzieloną przenikiem, zamieniam przecinki na kropki, wszystkie te operacje robię na piechotę co zajmuje dużo czasu. Gdyby ktoś pomógł mi zautomatyzować opisane czynności, będę bardzo wdzięczny.
    Na komputerze mam zainstalowane oprogramowanie:
    Microsoft Windows XP Professional
    Dodatek Service Pack 3
    Microsoft Office Excel 2003
  • e-miernikie-mierniki
  • Poziom 31  
    Załącz proszę plik po imporcie danych.
  • Poziom 22  
    Wszystko da się zrobić. Pytania:
    - czy te przykładowe wiersze (1,501) to są jakieś szczególne wartości? ekstrema? czy po prostu są podawane z góry na stałe dla wszystkich plików z pomiarami?
    - czy będzie pasowało jak zrobię to w powershellu?
  • e-miernikie-mierniki
  • Poziom 6  
    Dziękuję za odzew.
    Do pliku zapisywanych jest dwa razy po 500 pomiarów, wartość pomiaru zmienia się co 500 wierszy, więc gdy zmieni się np.: w 11 wierszu, to następna zmiana będzie w wierszu 511 a następna w nowym pliku około 11 wiersza, wiec gdy wezmę wiersz 1 i 501 na pewno będę miał 2 odrębne pomiary. Do tej pory w wczytany plik wstawiam w kolumnie H funkcję: =JEŻELI(E2=E3;0;E3) i powielam do końca tabeli. potem zeruję wiersze o wartości 0 i otrzymuję wiersze ze zmianą wartości. zajmuje to sporo czasu. w załącznikach tabela z pomiarami i tabela sumaryczna z 3 dni.
    Nie posiadam programu Powershell, to jeszcze jedna niewiadoma.
  • Specjalista - VBA, Excel
    Witaj
    Pomiar_N.csv - wszystkie w odnom folderze?

    Dodano po 20 [minuty]:

    Wtedy
    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Poziom 6  
    Witam JRV i dziękuję za zainteresowanie.
    Uruchomiłem makro wpisane do pliku Suma_0.xls. W tum samym folderze "Pomiary" mam plik Suma_0.xls oraz pliki pomiarów od O do 60, tak aby suma zliczonych wierszy nie przekroczyła 65000.
    Program wczytał pliki pomiarowe, ale nie zwrócił żadnych danych, ani żadnego komunikatu, prosił bym również o wyjaśnienie działania programu. wstawiłem zrzut ekranu z 13 plikami pomiarowymi,

    excel import plików csv do Excela
  • Specjalista - VBA, Excel
    Nie dodane wiersze w dolu pliku Suma_0.xls ??

    Dodano po 6 [minuty]:

    Jaka wersja Excel ?
    Moj 2007 wczyta csv kolumnamy... 5 kolumn
    Upss.. a 2003 wszystko w jednu
    Pomyslim o tom

    Dodano po 1 [godziny] 42 [minuty]:

    Tu jest
    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Poziom 6  
    VJR. Dziękuję za pomoc.
    Działa, a taki krótki KOD. Zauważyłem że program zapisuje wiersze po zmianie wartości, i to jest najbardziej prawdziwe chociaż nie rozumię zapisanych instrukcji. Przetestowałem na grupie 250 plików (250000 pomiarów) umieszczonych w jednym folderze i stworzył sumę potrzebnych pomiarów w pliku z którego uruchomiłem program. Trzeba było na koniec zamienić przecinki na kropki i posortować wg daty.
    Jeszcze raz bardzo dziękuję i pozdrawiam
  • Poziom 6  
    MAXIN, Diękuję za podpowiedź,
    Pozdrawiam