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 “
Miesto a príkazové tlačidlo do pracovného hárka 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.
excelový súčet buniek so špecifickým textomŽiadnymyFileAko Reťazec, textAko Reťazec, textový riadokAko Reťazec, počúvanieAko Celé číslo, posLongAko Celé číslo
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 GetOpenFilename v editore jazyka Visual Basic a kliknite na F1, aby ste získali pomoc s argumentmi.
4. Pridajte nasledujúci riadok kódu:
OtvorenémyFilePre Vstup Ako#1Pozná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:
Urob DoEOF (1)Riadok 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 spojenie (spojenie) všetkých jednotlivých riadkov použijeme operátor & a uložíme ho do textu premennej.
6. Zatvorte súbor.
Zavrieť#17. Ďalej v premennom texte hľadáme polohu slov zemepisná šírka a dĺžka. Používame Funkcia Instr .
Počúvanie = Instru (text, 'latitude')posLong = InStr (text, 'zemepisná dĺžka')
8. Používame tieto polohy a Stredná funkcia extrahovať súradnice z textu premennej a zapísať ich 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:
Prejsť na nasledujúcu kapitolu: Ovládacie prvky ActiveX