Elektroda.pl
Elektroda.pl
X
Prosz, dodaj wyj徠ek www.elektroda.pl do Adblock.
Dzi瘯i temu, 瞠 ogl康asz reklamy, wspierasz portal i u篡tkownik闚.

[Rozwi您ano] VBA wczytanie pliku tekstowego do EXCELA wraz ze wszystkimi znakami

NEOKATRINA 27 Mar 2018 16:53 792 10
  • #1 27 Mar 2018 16:53
    NEOKATRINA
    Poziom 3  

    Witam,
    Chcialabym wczytac plik zr鏚這wy wraz ze wszystkimi znakami jakie tam wystepuja. Spacjami i tabulatorami itd. [
    Gdyz tylko te wiersze ktore maja 120 znak闚 dlugosci wraz ze spacjami mozna jakos potem rodzieli na kolumny, zeby plik byl czytelny.

    Wczytywanie pliku przez zastosowanie wczytanie jak poniizej "gubi" znaki spacje.

    W zalaczeniu plik zr鏚lowy. dane_przy..ad.txt Download (920 bajt闚)

    KOD VBA:
    Sub read_f()


    Dim myfile As String, textData As String, textRow As String, fileNo As Integer, x As Double
    myfile = Application.GetOpenFilename() 'open any file
    fileNo = FreeFile 'Get first free file number

    textRow = 1
    Open myfile For Input As #fileNo
    Do While Not EOF(fileNo)
    Line Input #fileNo, textData
    Cells(textRow, 1) = textData
    textRow = textRow + 1
    Loop
    Close #fileNo
    End Sub

    0 10
  • Pomocny post
    #2 27 Mar 2018 17:32
    czareqpl
    Poziom 28  

    To nie s spacje, tylko tabulacje.
    Zobacz czy funkcj streplace uda Ci si zamieni znak tabulacji na np 5-6 spacji.

    0
  • #3 01 Kwi 2018 14:29
    lanzul
    Poziom 26  

    NEOKATRINA napisa:
    jakos potem rodzieli na kolumny, zeby plik byl czytelny

    Mo瞠 po prostu najprostsza opcja, a potem tylko jakie porz康ki:
    Kod: vba
    Zaloguj si, aby zobaczy kod

    0
  • #4 01 Kwi 2018 19:03
    NEOKATRINA
    Poziom 3  

    Witam,
    Dziekuje za zainteresowanie tematem. Jednak rozwiazanie nie jest tym czego szukalam.
    Wiem jak wczytac plik zarowno przez czytanie lini Input Line jak i potem rozdzielic uzywajac split i lub text to columns lub nawet wczytac plik za pomoca QueryTablesAdd (jako dane z pliku) jednak wczystkie te opcje nie czytaja pliku zrodlowego "w calosci".

    Sama nie wiem jak ale czasem udaje sie przez kopiuj wklej wkleic do excela dane do jednej komorki, Dzieki temu dlugosc wiersza ktore mnie interesuje ma 130 znakow i mozna wyciagnac dane tylko dla tych wierszy. Ponizej zamieszczam plik z takim rozwiazaniem (to nie bylo moim pomyslem -ktos to kiedys opracowal) - tu nie ma macra tylko funkcje excela pod warunkiem ze" dobrze "wkleimy" dane.
    Sample -ex...signs.xlsx Download (22.41 kB)

    Czy ktos wie jak moge wczytac/wkleic dane do jednej komorki "ze wszystkimi znakami" i jak to uzyskac przez macro?
    Moje proby wczytania pliku przez macro niestety za kazdym razem "gubia" taby.

    Juz zrobilam prototyp macra.. ale to bardzo wg mnie naokolo i musialam skorzystac z 3 funkcji z interenetu by np. obciac niepotrzebne znaki (CleanTrim) i (ile wystapien) by sprawdzic kiedy wystepuje 2ga ,3 cia itd spacja np. oraz (ReplaceN) dla zamiany textu. I jeszcze nie jest to efekt ktorego chce.
    Gdybym umiala wczytac te wszystkie znaki....to moze by macro mogloby byc prostsze. :)
    VBA co..txt Download (13.21 kB)

    0
  • #5 02 Kwi 2018 10:32
    JRV
    Specjalista - VBA, Excel

    Dane
    30 ch
    Hot W
    - D
    - E
    ma byc w jednej kolumnie lub w dwoch?
    Plik w poscie #1 jest rzeczywiscie zr鏚lowe dane?

    0
  • #6 02 Kwi 2018 10:43
    NEOKATRINA
    Poziom 3  

    Witam,
    1.W poscie jest cze嗆 danych.Nie moge pokaza wszystkich bo jest tam nazwa fimy itd.
    Dane generowane sa z systemu Oracle do pliku tekstowego ,wiec jest to czesc pliku jaki si tworzy.
    Czy to ma jasies znaczenie?

    2.Tak dane z pliku sa czescia nazwy srodka ,do kolumny zaczynajacej sie od daty.

    0
  • Pomocny post
    #7 02 Kwi 2018 11:55
    JRV
    Specjalista - VBA, Excel

    JRV napisa:
    ma byc w jednej kolumnie lub w dwoch?

    NEOKATRINA napisa:
    Czy to ma jasies znaczenie?

    Np. '30' i 'ch' dzieli si Tab'em, oraz 'Ho't i 'W', - i D itp., nastepnie dane w arkuszu Excel
    jest przesuni皻e wewn徠rz tabeli. Lanzul ma racje, Wczytac ten plik Excel'em, jeszcze lepej jak jest na komputerze klient lub run-time Oracle, wczytac to za pomocy kwerendy

    0
  • #8 02 Kwi 2018 14:56
    lanzul
    Poziom 26  

    JRV napisa:
    jest przesuni皻e wewn徠rz tabeli

    "安i皻e s這wa" - jest rozjazd w pliku ".txt" (幢e utworzony) jak JRV pisze, widok na zrzutce:
    VBA wczytanie pliku tekstowego do EXCELA wraz ze wszystkimi znakamiRozjaz..jpg Download (133.74 kB)
    Dodatkowo tak to si prezentuje w ".xls" w r騜nych uk豉dach:
    Rozjazd ..t.zip Download (6.57 kB)

    Ale nawet pomimo tego, mo積a to "okie透na" makrami rozdzielaj帷ymi tekst "na za" (ilo嗆 kombinacji nie trzymaj帷ych schematu jest raczej ograniczona), nie trzeba wpycha wszystkiego do "jednej kom鏎ki".
    Przecie sama piszesz, 瞠 "jakos potem rodzieli na kolumny" ... ?

    0
  • #9 02 Kwi 2018 19:16
    NEOKATRINA
    Poziom 3  

    Witam,
    Tak w陰snie sek w tym ze jest ten rozjad i trzeba go okie透na.
    Przyklad z poprawionego txt jest super, na tym by mozna cos zdziala.
    Wlasnie o takie cos mi chodzi. :)

    Pisa豉m ze jesli sie wczyta calosc z tabami do jednej komorki to widac ze jest znak闚 130 i za pomoc formu mo積a powy豉wia te o kt鏎e chodzi. Jak w pliku Excela umieszczonym przeze mnie wcze郾iej. Jesli wczytam bez "tab" to d逝go嗆 znakow w wierszu jest r騜na i niestety nie mo積a zastosowa regu "wy豉wiania" odpowiednich p鏊 . Jak w przyk豉dzie wspomnianego Excela w arkuszu 2.

    Ale ja sie nie upieram na wczytaniu wszystkiego do jednego pola, jesli to mozna zrobi makrem inaczej.
    Po prostu mialam zoptymalizowac robienie tego raportu przez automatycznie wczytanie danych z txt (po formuly w excelu juz ktos opracowal) i tu wlasnie utknelam gdyz mi nie chce macro wczytac wszystkich znakow :(

    Dodano po 5 [minuty]:

    JRV napisa:
    JRV napisa:
    ma byc w jednej kolumnie lub w dwoch?

    NEOKATRINA napisa:
    Czy to ma jasies znaczenie?

    Np. '30' i 'ch' dzieli si Tab'em, oraz 'Ho't i 'W', - i D itp., nastepnie dane w arkuszu Excel
    jest przesuni皻e wewn徠rz tabeli. Lanzul ma racje, Wczytac ten plik Excel'em, jeszcze lepej jak jest na komputerze klient lub run-time Oracle, wczytac to za pomocy kwerendy


    Co to run-time Oracle? Ja nie mam dostepu do tych raport闚 ale moge spytac kolezanki,ktora je robi. Z tego co widzialam to po prostu w naszym systemie ksi璕owym naciska guzik i wychodzi jej raport od razu w txt, albo w przegladarce i zapisuje jako txt.

    0
  • Pomocny post
    #10 03 Kwi 2018 01:08
    lanzul
    Poziom 26  

    Je郵i wasi informatycy-programi軼i odm闚i pomocy w poprawieniu ".txt", to rzeczywi軼ie trzeba b璠zie co wym璚zy ...
    Na razie pytanie, czy da si wydzieli jak捷 ograniczon ilo嗆 "zestaw闚 znak闚" (tych a la: 30 Ch, Hot W, - D, - E, itd.), kt鏎e mieszaj szyki (poprzez rozdzielenie ich tabulatorami, miast odst瘼ami) ?

    I jeszcze pytanie: czy zawsze jest tylko 11 kolumn w takim pliku, czy mo瞠 by wi璚ej/mniej ?

    0
  • #11 18 Kwi 2018 06:08
    NEOKATRINA
    Poziom 3  

    Dziekuje wszystkim za informacje. Niestety dalej nie wiem jak wczytac plik z tabulacjami ale to moje skomplikowane co prawda macro dziala. Niestety nasz dzial informatyki nie odpowiada moze bo jest w Holandii albo jestemy na liscie malych priorytetow dla nich.Uwazam ze jak na ksiegowa to i tak sukces.
    Dziekuje

    0