Čítajte údaje z textového súboru pomocou programu Excel VBA - ľahké makrá programu Excel

Obsah

Nižšie sa pozrieme na program v Excel VBA že číta údaje z textového súboru. Tento súbor obsahuje niektoré geografické súradnice, ktoré chceme importovať do Excelu.

Situácia:

1. Najprv si stiahnite textový súbor a pridajte ho do „C: \ test \“

Na pracovný hárok umiestnite príkazové tlačidlo a pridajte nasledujúce riadky kódu:

2. Deklarujeme štyri premenné. myFile typu String, text typu String, textový riadok typu String, posLat typu Integer a posLong typu Integer.

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

3. Potrebujeme inicializovať premennú myFile s úplnou cestou a názvom súboru.

myFile = "C: \ test \ Geographic-Coordinates.txt"

alebo

pomocou metódy GetOpenFilename objektu Application zobrazte štandardné dialógové okno Otvoriť a vyberte súbor (bez skutočného otvorenia súboru).

myFile = Application.GetOpenFilename ()

Poznámka: prázdna časť medzi zátvorkami znamená, že programu Excel VBA neposkytujeme nič ako vstup. Umiestnite kurzor na položku GetOpenFilename v editore jazyka Visual Basic a kliknite na kláves F1, aby ste získali pomoc s argumentmi.

4. Pridajte nasledujúci riadok kódu:

Otvorte myFile pre vstup ako #1

Poznámka: toto vyhlásenie umožňuje čítanie súboru. Po zvyšok nášho kódu môžeme súbor označiť ako #1.

5. Pridajte nasledujúce riadky kódu:

Robiť do EOF (1)
Riadkový vstup č. 1, textový riadok
text = text & textový riadok
Slučka

Poznámka: Excel VBA do konca súboru (EOF) prečíta jeden riadok zo súboru a priradí ho textovému riadku. Na spájanie (spájanie) všetkých jednotlivých riadkov používame operátor & a ukladáme ho do textu premennej.

6. Zatvorte súbor.

Zatvorte #1

7. Ďalej v premennom texte hľadáme polohu slov zemepisná šírka a dĺžka. Používame funkciu Instr.

posLat = InStr (text, "zemepisná šírka")
posLong = InStr (text, "zemepisná dĺžka")

8. Tieto polohy a funkciu Mid používame na extrahovanie súradníc z textu premennej a zapísanie súradníc do bunky A1 a bunky A2.

Rozsah („A1“). Hodnota = stred (text, posLat + 10, 5)
Rozsah ("A2"). Hodnota = stred (text, posLong + 11, 5)

9. Otestujte program.

Výsledok:

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave