Чтение данных из текстового файла с помощью Excel VBA - Easy Excel Macros

Содержание

Ниже мы рассмотрим программу на Excel VBA тот читает данные из текстового файла. Этот файл содержит некоторые географические координаты, которые мы хотим импортировать в Excel.

Ситуация:

1. Сначала загрузите текстовый файл и добавьте его в "C: \ test \".

Поместите командную кнопку на свой рабочий лист и добавьте следующие строки кода:

2. Объявляем четыре переменные. myFile типа String, текст типа String, текстовая строка типа String, posLat типа Integer и posLong типа Integer.

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

3. Нам нужно инициализировать переменную myFile, указав полный путь и имя файла.

myFile = "C: \ test \ географические координаты.txt"

или

используйте метод GetOpenFilename объекта Application, чтобы отобразить стандартное диалоговое окно Open и выбрать файл (без фактического открытия файла).

myFile = Application.GetOpenFilename ()

Примечание: пустая часть в скобках означает, что мы ничего не передаем Excel VBA в качестве входных данных. Поместите курсор на GetOpenFilename в редакторе Visual Basic и нажмите F1, чтобы получить справку по аргументам.

4. Добавьте следующую строку кода:

Открыть myFile для ввода как # 1

Примечание: этот оператор позволяет читать файл. Мы можем ссылаться на файл как на №1 в остальной части нашего кода.

5. Добавьте следующие строки кода:

До EOF (1)
Линейный ввод №1, текстовая строка
текст = текст и текстовая строка
Петля

Примечание: до конца файла (EOF) Excel VBA считывает одну строку из файла и назначает ее текстовой строке. Мы используем оператор & для объединения (соединения) всех отдельных строк и сохранения их в тексте переменных.

6. Закройте файл.

Закрыть # 1

7. Далее ищем положение слов широта и долгота в переменном тексте. Мы используем функцию Instr.

posLat = InStr (текст, "широта")
posLong = InStr (текст, «долгота»)

8. Мы используем эти позиции и функцию Mid, чтобы извлечь координаты из переменного текста и записать координаты в ячейку A1 и ячейку A2.

Диапазон ("A1"). Значение = Mid (текст, posLat + 10, 5)
Диапазон ("A2"). Значение = Mid (текст, posLong + 11, 5)

9. Протестируйте программу.

Результат:

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave