VBA - čtení textového souboru do řetězce

Tento tutoriál předvede, jak číst textový soubor do řetězce ve VBA.

Textový soubor můžeme číst buď po řádcích, nebo jako celý soubor.

Přečíst celý textový soubor do řetězce

Text v textovém souboru je obvykle tvořen několika řádky, oddělenými oddělovači. Může to být čárka („,“), čárka s mezerou („,“), středník („;“), středník s mezerou („;“), mezera („“), tabulátor (vbTab ) nebo ve vzácných případech jakýkoli jiný znak, jako je vlnovka (~). Řádky jsou obvykle odděleny zalomením řádku (vbCRLF).

Nejjednodušší způsob, jak přečíst celý textový soubor ve VBA, je spustit následující kód, který umístí celý obsah textového souboru do proměnné řetězce. Tento postup používá příkaz VBA Open a funkci VBA FreeFile.

12345678910 Sub ReadFile ()Dim iTxtFile jako celé čísloDim strFile jako řetězecDim strFileText jako řetězecstrFile = "C: \ Test \ TestFile.txt"iTxtFile = FreeFileOtevřete strFile pro vstup jako FreeFilestrFileText = Vstup (LOF (iTxtFile), iTxtFile)Zavřete soubor iTxtFileEnd Sub

Můžeme také přečíst textový soubor ve VBA pomocí FileSystemObject. V níže uvedeném kódu jsme použili pozdní vazbu s objektem systému souborů.

1234567891011 Sub ReadTextFile ()Dim strText jako řetězecDim FSO jako objektDim TSO jako objektNastavit FSO = CreateObject ("Scripting.FileSystemObject")Nastavit TSO = FSO.OpenTextFile ("C: \ Test \ TestFile.txt")strText = TSO.ReadAllTSO. ZavřítNastavit TSO = NicNastavit FSO = NicEnd Sub

Můžeme také použít ranou vazbu v kódu a deklarovat objekt systému souborů vytvořením odkazu v našem projektu aplikace Excel na objekt systému souborů.

1234567891011 Sub ReadTextFile ()Dim strText jako řetězecDim FSO jako nový FileSystemObjectDim TSO jako objektNastavit FSO = CreateObject ("Scripting.FileSystemObject")Nastavit TSO = FSO.OpenTextFile ("C: \ Test \ TestFile.txt")strText = TSO.ReadAllTSO. ZavřítNastavit TSO = NicNastavit FSO = NicEnd Sub
wave wave wave wave wave