Skaitykite duomenis iš teksto failo naudodami „Excel VBA“ - „Easy Excel“ makrokomandos

Turinys

Žemiau apžvelgsime programą Excel VBA kad skaito duomenis iš teksto failo. Šiame faile yra keletas geografinių koordinačių, kurias norime importuoti į „Excel“.

Situacija:

1. Pirmiausia atsisiųskite tekstinį failą ir pridėkite jį prie „C: \ test \“

Įdėkite komandų mygtuką į savo darbalapį ir pridėkite šias kodo eilutes:

2. Deklaruojame keturis kintamuosius. „myFile“ tipo „String“, „String“ tipo tekstas, „String“ tipo teksto eilutė, „PosLat“ tipo „Integer“ ir „posLong“ tipo „Integer“.

Dim myFile as String, text as String, textline as String, posLat As Integer, posLong As Integer

3. Turime inicijuoti kintamąjį myFile, nurodydami visą kelią ir failo pavadinimą.

myFile = "C: \ test \ geografinės koordinatės.txt"

arba

naudokite objekto „Application“ metodą „GetOpenFilename“, kad būtų rodomas standartinis dialogo langas „Atidaryti“ ir pasirinkite failą (faktiškai neatidarant failo).

myFile = Application.GetOpenFilename ()

Pastaba: tuščia dalis tarp skliaustų reiškia, kad „Excel VBA“ nieko neįvedame kaip įvesties. Užveskite žymeklį ant „GetOpenFilename“ „Visual Basic“ redaktoriuje ir spustelėkite F1, kad gautumėte pagalbos dėl argumentų.

4. Pridėkite šią kodo eilutę:

Atidarykite „myFile“, kad įvestumėte kaip 1

Pastaba: šis teiginys leidžia nuskaityti failą. Likusią kodo dalį galime nurodyti failą kaip #1.

5. Pridėkite šias kodo eilutes:

Atlikti iki EOF (1)
1 eilutės įvestis, teksto eilutė
tekstas = tekstas ir teksto eilutė
Kilpa

Pastaba: iki failo (EOF) pabaigos „Excel VBA“ nuskaito vieną failo eilutę ir priskiria ją teksto eilutei. Mes naudojame & operatorių, kad sujungtume (sujungtume) visas atskiras eilutes ir išsaugotume jas kintamajame tekste.

6. Uždarykite failą.

Uždaryti #1

7. Toliau ieškome žodžių platumos ir ilgumos padėties kintamajame tekste. Mes naudojame funkciją „Instr“.

posLat = InStr (tekstas, „platuma“)
posLong = „InStr“ (tekstas, „ilguma“)

8. Mes naudojame šias pozicijas ir funkciją „Mid“, kad iš kintamojo teksto išgautume koordinates ir įrašytume koordinates į langelį A1 ir langelį A2.

Diapazonas („A1“). Vertė = vidutinė (tekstas, posLat + 10, 5)
Diapazonas („A2“). Vertė = vidutinė (tekstas, posLong + 11, 5)

9. Išbandykite programą.

Rezultatas:

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave