Citiți date dintr-un fișier text folosind Excel VBA - Macro Excel ușor

Cuprins

Mai jos vom analiza un program în Excel VBA acea citește date dintr-un fișier text. Acest fișier conține câteva coordonate geografice pe care dorim să le importăm în Excel.

Situatie:

1. Mai întâi, descărcați fișierul text și adăugați-l la „C: \ test \”

Plasați un buton de comandă pe foaia de lucru și adăugați următoarele linii de cod:

2. Declarăm patru variabile. myFile de tip String, text de tip String, textline de tip String, posLat de tip Integer și posLong de tip Integer.

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

3. Trebuie să inițializăm variabila myFile cu calea completă și numele fișierului.

myFile = "C: \ test \ geografic-coordonate.txt"

sau

utilizați metoda GetOpenFilename a obiectului Aplicație pentru a afișa caseta de dialog Deschidere standard și selectați fișierul (fără a deschide efectiv fișierul).

myFile = Application.GetOpenFilename ()

Notă: partea goală dintre paranteze înseamnă că nu oferim nimic Excel VBA ca intrare. Plasați cursorul pe GetOpenFilename în Visual Basic Editor și faceți clic pe F1 pentru ajutor cu argumentele.

4. Adăugați următoarea linie de cod:

Deschideți myFile pentru intrare ca numărul 1

Notă: această declarație permite citirea fișierului. Ne putem referi la fișier ca numărul 1 în restul codului nostru.

5. Adăugați următoarele linii de cod:

Faceți până la EOF (1)
Intrare linie # 1, linie text
text = text & textline
Buclă

Notă: până la sfârșitul fișierului (EOF), Excel VBA citește o singură linie din fișier și o atribuie liniei text. Folosim operatorul & pentru a concatena (uni) toate liniile simple și a le stoca în textul variabilei.

6. Închideți fișierul.

Închideți numărul 1

7. În continuare, căutăm poziția cuvintelor latitudine și longitudine în textul variabil. Folosim funcția Instr.

posLat = InStr (text, „latitudine”)
posLong = InStr (text, „longitudine”)

8. Folosim aceste poziții și funcția Mid pentru a extrage coordonatele din textul variabilei și a scrie coordonatele în celula A1 și celula A2.

Interval („A1”). Valoare = Mid (text, posLat + 10, 5)
Interval ("A2"). Valoare = Mid (text, posLong + 11, 5)

9. Testați programul.

Rezultat:

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave