Andmete lugemine tekstifailist, kasutades Excel VBA - lihtsaid Exceli makroid

Lang L: none (table-of-contents)

Allpool vaatame programmi Exceli VBA seda loeb andmeid tekstifailist. See fail sisaldab mõningaid geograafilisi koordinaate, mida soovime Excelisse importida.

Olukord:

1. Esiteks laadige alla tekstifail ja lisage see kausta „C: \ test \”

Asetage oma töölehele käsunupp ja lisage järgmised koodiridad:

2. Me deklareerime neli muutujat. myFile tüüpi String, teksti tüüp String, tekstirida tüüpi String, posLat tüüpi Integer ja posLong tüüpi Integer.

Dim myFile kui string, tekst stringina, tekstirida stringina, posLat As Integer, posLong As Integer

3. Peame initsialiseerima muutuja myFile täieliku tee ja failinimega.

myFile = "C: \ test \ geograafilised koordinaadid.txt"

või

kasutage tavalise dialoogiboksi Avamine kuvamiseks rakenduse objekti GetOpenFilename meetodit ja valige fail (ilma faili tegelikult avamata).

myFile = Application.GetOpenFilename ()

Märkus: sulgude vahel olev tühi osa tähendab, et me ei anna Excel VBA -le sisendina midagi. Asetage kursor Visual Basic Editoris GetOpenFilename ja klõpsake argumentide abistamiseks nuppu F1.

4. Lisage järgmine koodirida:

Avage sisendiks fail #1

Märkus: see avaldus võimaldab faili lugeda. Ülejäänud koodi ajal võime viidata failile #1.

5. Lisage järgmised koodiridad:

Tehke kuni EOF -ni (1)
Rida sisend #1, tekstirida
tekst = tekst ja tekstirida
Loop

Märkus: kuni faili lõpuni (EOF) loeb Excel VBA failist ühe rea ja määrab selle tekstireale. Kasutame operaatorit &, et ühendada (liita) kõik üksikud read ja salvestada see muutuvteksti.

6. Sulgege fail.

Sule #1

7. Järgmisena otsime muutuva teksti sõnade laius- ja pikkuskraad. Kasutame funktsiooni Instr.

posLat = InStr (tekst, "laiuskraad")
posLong = InStr (tekst, "pikkuskraad")

8. Me kasutame neid positsioone ja funktsiooni Mid, et eraldada muutuva teksti koordinaadid ja kirjutada koordinaadid lahtrisse A1 ja lahtrisse A2.

Vahemik ("A1"). Väärtus = keskmine (tekst, posLat + 10, 5)
Vahemik ("A2"). Väärtus = keskmine (tekst, posLong + 11, 5)

9. Testige programmi.

Tulemus:

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave