Dostęp do plików tekstowych spośród programu Excel

Dostęp do plików tekstowych spośród programu Excel jest częstym wymogiem oraz pożądane byłoby wiedzieć, niektóre spośród funkcji i narzędzi dostępnych w VBA , wyjątkowo podczas gdy szukać pliku oraz porównanie danych z informacjami w arkuszu kalkulacyjnym .Ten materiał wyjaśni, w kto postępowanie porównać dane w zobacz listowie spośród informacji zawartych w pliku tekstowym , a w szczególności identyfikacji duplikatów i brakujących danych .Otwieranie pliku tekstowegoJeśli już pracuje z VBA na chwilę, admitancja do obiektu systemu plików ( FSO) powinna byćprocedura natychmiast wpisany w bibliotece kod , iżby dostępu do plików łatwiejsze. Albo , możesz skopiować poniższy kod , zastępując nazwę pliku spośród jednego spośród własnych.Poniższy kod odczytuje dane na tok znaków o nazwie allTxt i będziemy używać życia tego ciągu , żeby zestawić everyman cząstka na naszej listowie . Innym rozwiązaniem jest czytanie pliku kabel po linii, natomiast byłoby to o mnóstwo wolniej w każdej pozycji na liście musiałaby znajdować się w stosunku aż do każdego wiersza w pliku .Dim fso Jak Scripting.FileSystemObjectDim myFile jak obiektZestaw = FSO Nowe Scripting.FileSystemObjectfilePath = ActiveWorkbook.path & ” mojplik.txt “Ustaw mojplik = fso.openTextFile ( filePath )allTxt = myFile.ReadAllmyFile.CloseUstaw mojplik = NothingSet FSO = NothingKiedy w tej chwili zapisane dane do łańcucha, nie musimy pakiet natychmiast wobec tego go zamknąć zaś hamować go z pamięci.Następnym krokiem jest , iżby przesiać listę danych , które chcemy zestawić . Jeślidane są w jednej kolumnie arkusza (1) własny kod komputerowy będzie coś takiego :dim rng w zakresiearkusze (1). włączyćustawić rng = Range ( “A1” ) . currentRegion.columns (1)Z naszej listy zdefiniowane natomiast dane spośród pliku tekstowego w ciągu my puszki supeł listę a określić, które elementy są zawarte w pliku :Dla każdego c w rng.rowsJeśli InStr ( allTxt , c ) > 0 ThentxtFound = txtFound & c & “,”więcejtxtNotFound = txtNotFound & c & “,”End IfnastępnyKod został napisany na dwójka osobne ciągi rzeczy znalezionych oraz tych nie znaleziono . To terazproste funkcja przekształcić wynik w czytelnej formie .Najpierw usuniemy koma spływu z każdej struny z funkcji lewej .txtFound = oszukany ( txtFound , Len ( txtFound ) – 1)txtNotFound = zobacz niewiarygodny ( txtNotFound , Len ( txtNotFound ) – 1)Wreszcie, stworzymy otwór okienny komunikatu , ażeby unaocznić konsekwencja . Zauważ vbCrLf znaków , jaki wprowadza nową linię pośrodku dwie ciągi .msg = ” Znaleziono: ” & txtFound & vbCrLfmsg = msg & ” Nie znaleziono : ” & txtNotFoundMsgBox msgstreszczenieTen materiał wykazał multum VBA aż do porównania danych w różnych plikach. Czasami użytkownicy muszą brzmieć informacje w różnych strukturach a owo jest przydatne mieć pojęcie , gdy być w użyciu admitancja natomiast przenicować pliki tekstowe do własnych konkretnego projektu .

Comments are closed.