Níže se podíváme na program v Excel VBA že čte data z textového souboru. Tento soubor obsahuje některé zeměpisné souřadnice, které chceme importovat do Excelu.
Situace:
1. Nejprve si stáhněte textový soubor a přidejte jej do „C: \ test \“
Umístěte na list příkazové tlačítko a přidejte následující řádky kódu:
2. Deklarujeme čtyři proměnné. myFile typu String, text typu String, textový řádek 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. Potřebujeme inicializovat proměnnou myFile s úplnou cestou a názvem souboru.
myFile = "C: \ test \ Geographic Coordinates.txt"
nebo
použijte metodu GetOpenFilename objektu Application k zobrazení standardního dialogového okna Otevřít a vyberte soubor (bez skutečného otevření souboru).
myFile = Application.GetOpenFilename ()
Poznámka: prázdná část mezi závorkami znamená, že Excelu VBA nedáme nic jako vstup. Umístěte kurzor na GetOpenFilename v editoru jazyka a klikněte na F1 pro pomoc s argumenty.
4. Přidejte následující řádek kódu:
Otevřete myFile pro vstup jako #1
Poznámka: toto prohlášení umožňuje čtení souboru. Po zbytek našeho kódu můžeme soubor označit jako #1.
5. Přidejte následující řádky kódu:
Do Do EOF (1)
Řádkový vstup č. 1, textový řádek
text = text & textový řádek
Smyčka
Poznámka: až do konce souboru (EOF), Excel VBA přečte jeden řádek ze souboru a přiřadí jej k textovému řádku. Pomocí operátoru & spojíme (spojíme) všechny jednotlivé řádky a uložíme je do proměnného textu.
6. Zavřete soubor.
Zavřít #1
7. Dále v proměnném textu hledáme polohu slov zeměpisná šířka a délka. Používáme funkci Instr.
posLat = InStr (text, "zeměpisná šířka")
posLong = InStr (text, "zeměpisná délka")
8. Tyto polohy a funkci Mid používáme k extrahování souřadnic z textu proměnné a zápisu souřadnic do buňky A1 a buňky A2.
Rozsah ("A1"). Hodnota = střední (text, posLat + 10, 5)
Rozsah ("A2"). Hodnota = střední (text, posLong + 11, 5)
9. Otestujte program.
Výsledek: