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

Pliki .txt z określonymi wierszami do excela

17 Cze 2015 12:55 1302 13
  • Poziom 9  
    Witam.

    Potrzebuję pomocy z importem wielu plików txt do excela. Pliki txt mają podobne rozłożenie różnią się jedynie wartościami oraz liczbą wierszy. Potrafię stworzyć makro na kopiowanie z wybranego pliku txt określonych kolumn od np 20 wiersza.
    Dziś potrzebuję stworzyć makro do importowania wielu plików txt znajdujących się np: "c:/a/". Znalazłem coś takiego ale niestety nie umiem tego aktywować.
    Czy mógłby ktoś tak to zmodyfikować aby pliki były wyszukiwane w folderze "c:/a/" oraz wyszukiwany był tylko tekst od 20 do 25 (lub tylko od 20) wiersza podzielony na kolumny które oddziela "spacja".
    Tak naprawdę wolałbym aby z pliku txt wybierane były tylko wiersze w których występują określone ciągi znaków ale obawiam się że dla mnie to niewykonalne.

    Kod na którym się wzoruje:
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Z góry dziękuje i pozdrawiam
    Robert
  • Poziom 32  
    Przecież są komentarze, rozkmiń jak działa i odpowiednio przerób.
    To VB.NET wersja konsolowa.
  • Poziom 22  
    Do Excela wygodniej będzie ciągnąć makrem VBA. Ja bym to robił w takiej kolejności:
    1. Zrób sobie taką pętlę, która przebiega po wszystkich plikach o które ci chodzi. Przetestować. Możesz wypisać nazwy dla weryfikacji czy działa.
    2. Otwieraj każdy plik po kolei i czytaj w pętli do końca pliku. Przetestować na 1 pliku. Możesz teraz wypisać wiersze, żeby zobaczyć czy jest ok. Tu możesz pokombinować z filtrowaniem wierszy według dowolnego warunku.
    3. Najtrudniejsze, ale nie takie trudne: rozebrać wiersz na komórki i zapisanie wartosci gdzie trzeba. Nic nie musisz tu zapisywać do testu, wyniki widać w arkuszu.
    Do każdego zagadnienia możesz odszukać w internecie odpowiedni szablon, albo zarejestrować makro i je przerabiać.
    Mam nadzieję, że nie przekręciłem tego co chcesz mieć.
  • Poziom 9  
    Czy jest możliwe zmodyfikowanie makra aby kopiował do określonego wiersza?
  • Poziom 40  
    svrobert napisał:
    Czy jest możliwe zmodyfikowanie makra aby kopiował do określonego wiersza?
    Tzn.? Dane z pliku txt ma kopiować maksymalnie do jakiegoś wiersza w pliku txt, czy dane mają być kopiowane do jakiegoś konkretnego wiersza w excelu?
  • Poziom 9  
    Opcję z wierszami darował bym sobie. Pojawił mi się kolejny problem. Przy importowaniu pliku bez zadeklarowanych warunków (powinien pobierać wszystkie linie) pojawia się błąd (Application-defined or object-defined error). W zakładce wyniki pojawiają mi się dane ale zauważyłem że są one importowane tylko do momentu w którym jest pusty wiersz (odstęp) w importowanym pliku txt.
    Np:
    Plik txt zawiera:
    a aa bcd ghh
    d ff ssa wda ww

    ee q ssdw dd
    s dd


    Wynik importowania tego pliku:
    a aa bcd ghh
    d ff ssa wda ww


    Być może uda Ci się rozwiązać ten problem?
  • Poziom 40  
    Zmiany wymaga warunek rozbijający i pobierający linię. Powinien być taki:
    Kod: vbscript
    Zaloguj się, aby zobaczyć kod
  • Poziom 7  
    Witam
    A czy możliwe jest zaciąganie z pliku .txt wierszy jeśli spełniony jest warunek, taki np. że któraś z wartości w kolumnie w pliku .txt jest równa jakiejś określonej wartości. Potrzebuję zamienić bazę w accesie, która ma za dużą już wagę na bazę w pliku .txt. Na pewno pod względem wagi była by to mniejsza baza pod warunkiem, że można zaciągać wiersze z pliku .txt po wartości w jakiejkolwiek kolumny.
  • Specjalista - VBA, Excel
    Pliki .txt z określonymi wierszami do excela Kwerenda do pliku .txt z parametrem Pliki .txt z określonymi wierszami do excela/v2007PL[mod=adamas_nt]
  • Poziom 7  
    Dzięki za odpowiedź ale czy kwerenda pozwoli mi zaciągnąć np. wszystkie wiersze gdzie wartość w kolumnie nr 4 jest równa "2"? Mało się bawiłem kwerendą ale raczej nic takiego tam nie było.
  • Specjalista - VBA, Excel
    MSQuery pozwala na ustawienie filtra dla importu danych.
    F1 w pomoc.
  • Poziom 7  
    Potrzebowałbym jednak makro, które po wpisaniu wartości wyszukuje dane w kolumnie w pliku .txt jak już znajdzie to żeby zaciągał wiersza, gdzie podana wartość występuje. Tak zaciągam z Accessa do Exela. Chodzi mi o maksymalne uproszczenie, ponieważ osoby, które będą się tym zajmować nie mają na tyle wiedzy a i czas działania również się liczy.