Как прочитать текстовый файл в VBA
В нынешнее время использование текстовых файлов для обмена данными или хранения данных становится редкостью, но тем не менее, все еще встречается. Приведу два варианта чтения текстового файла из VBA. Каждый способ может быть полезен в своей ситуации.
Способ 1. Открытие (чтение) текстового файла целиком
Можно открыть текстовый файл без учета каких-либо разделителей, сплошным текстом:
Set objExcel = New Excel.Application Set wb = objExcel.Workbooks.Open("имя_файла")
либо, если используются разделители колонок, можно их задействовать:
Открытие текстового файла с разделителем Tab:
Set objExcel = New Excel.Application Set wb = objExcel.Workbooks wb.OpenText Filename:="имя_файла", DataType:=xlDelimited, Tab:=True
Открытие текстового файла с разделителем ; (точка с запятой):
Set objExcel = New Excel.Application Set wb = objExcel.Workbooks wb.OpenText Filename:="имя_файла", DataType:=xlDelimited, Other:=True, OtherChar:=";"
В параметрах можно так же добавить Origin:=xlMSDOS , если текстовый файл в DOS-кодировке.
После открытия файла, его можно пройти как обычные ячейки Excel-кого листа.
Способ 2. Чтение текстового файла построчно
Здесь используется классический вариант чтения как в большинстве языков программирования: открытие файла, цикл чтения построчно, закрытие файла.
f = FreeFile Open "имя_файла" For Input As #f Do While Not EOF(f) Line Input #f, s ' что-нибудь делаем с полученной строкой s Loop Close f
В первой строке определяем число, представляющее следующий номер файла, доступный для использования оператором Open. Затем открываем файл, после чего делаем цикл в котором происходит построчное чтение.
Как конвертировать файлы формата csv и txt в формат xls
Преобразовать файлы формата csv и txt в формат xls можно двумя способами:
Способ 1
Этот способ подходит как для пользователей программы Microsoft Excel так и для тех, кто пользуется Openoffice.
Текстовый файл или файл csv можно открыть как книгу Microsoft Excel при помощи команды Открыть. При открытии текстового файла его формат не изменяется. Если открыть файл формата csv, приложение Excel откроет его и отобразит данные в новой книге.
В Excel нажмите кнопку Открыть — появится диалогое окно Открыть.
— Для операционной системы Windows Vista выбираете пункт Текстовые файлы. Далее найдите в адресной строке нужный текстовый файл и дважды щелкните по нему.
— Для Microsoft Windows XP выберите в списке Тип файлов — Текстовые файлы. В списке Папка найдите нужный текстовый файл и дважды щелкните по нему.
Пример как это выглядит Openoffice

Открывается окно Импорт текста, в котором вы сможете изменить кодировку ( как правило ставится кодировка Юникод (UTF-8)), также можете выбрать разделитель, который разделяет значения в файле csv.

После настройки всех значений нажимаете Ok, и появляется таблица, которую нужно сохранить. Заходите в Файл — Сохранить как — и в диалоговом окне, выбираете формат Microsoft Excel 97/2000/XP (.xls) и файл сохраняется уже в формате xls.

Способ 2.
Подходит для пользователей Microsoft Excel
В имеющийся лист можно импортировать данные из текстового файла путем открытия внешних данных. Выберите ячейку в таблице для импорта внешних данных. Далее на вкладке Данные в группе Внешние данные нажмите кнопку Из текста.

— Для операционной системы Windows Vista в адресной строке найдите нужный для импорта файл, и щелкните по нему два раза.
— Для Microsoft Windows XP в списке Папка найдите нужный для импорта файл и щелкните по нему два раза. Откроется далоговое окно Импорт текста, в котором вы сможете изменить кодировку ( как правило ставится кодировка Юникод (UTF-8)), также можете выбрать разделитель, который разделяет значения в файле csv.

1)

2)
Далее в окне Куда поместить данные? выберите поместить данные в выбранное расположение (На существующий лист), либо поместить данные в верхний левый угол нового листа (Новый лист)
После нажатия кнопки OK. приложение Excel сохранит внешний дапазон данных в выбранную позицию.
Как открыть текстовый файл в excel
Подскажите, пожалуйста, как открыть несколько текстовых файлов в Excel, чтобы данные были в текстовом формате
(например, при выгрузке код 101104001110101540115401055105000 преобразуется в 1.01104001110101E+32, чего, соответственно быть не должно)
Пользователь
Сообщений: 23779 Регистрация: 22.12.2012
16.04.2012 17:14:58
При импорте внешних данных есть возможность указать формат столбца — ставьте таким столбцам текстовый формат.
Saalamandra
17.04.2012 08:51:23
Const strStartDir = «S:\» ‘папка, с которой начать обзор файлов
Const strSaveDir = «S:\» ‘папка, в которую будет предложено сохранить результат
Const blInsertNames = True ‘вставлять строку заголовка (книга, лист) перед содержимым листа
Dim wbTarget As New Workbook, wbSrc As Workbook, shSrc As Worksheet, shTarget As Worksheet, arFiles, _
i As Integer, stbar As Boolean, clTarget As Range
On Error Resume Next ‘если указанный путь не существует, обзор начнется с пути по умолчанию
ChDir strStartDir
On Error GoTo 0
With Application ‘меньше писанины
arFiles = .GetOpenFilename(«Excel Files (*.xlsx), *.xlsx, Excel Files (*.xls), *.xls, Text Files (*.txt), *.txt «, , «Объединить файлы», , True)
If Not IsArray(arFiles) Then End ‘если не выбрано ни одного файла
Set wbTarget = Workbooks.Add(template:=xlWorksheet)
Set shTarget = wbTarget.Sheets(1)
.ScreenUpdating = False
stbar = .DisplayStatusBar
.DisplayStatusBar = True
For i = 1 To UBound(arFiles)
.StatusBar = «Обработка файла » & i & » из » & UBound(arFiles)
‘shSrc.UsedRange.Copy
‘clTarget.PasteSpecial xlPasteValues
‘Application.CutCopyMode = False
Set wbSrc = Workbooks.Open(arFiles(i), ReadOnly:=True)
For Each shSrc In wbSrc.Worksheets
If IsNull(shSrc.UsedRange.Text) Then ‘лист не пустой
Set clTarget = shTarget.Range(«A1»).Offset(shTarget.Range(«A1»).SpecialCells(xlCellTypeLastCell).Row, 0)
If blInsertNames Then
clTarget = «>>> » & wbSrc.Name & » — » & shSrc.Name ‘вставка имени файла
Set clTarget = clTarget.Offset(1, 0) ‘вставка имени файла
End If ‘вставка имени файла
3 метода для Как импортировать текстовый файл в Excel (с советами)
Электронные таблицы Excel могут помочь вам сортировать и анализировать большие объемы данных. Если у вас есть информация в текстовом файле, которая может быть ценной в электронной таблице, можно импортировать этот файл в Excel. Изучение различных методов переноса данных между текстовыми файлами и листами Excel поможет вам выбрать метод, подходящий для формата ваших данных. В этой статье мы объясним ситуации, в которых этот процесс может быть полезен, и поделимся тремя методами того, как важно импортировать текстовый файл в Excel.
Когда импортировать текстовый файл в Excel
Если у вас есть данные, сохраненные в текстовом файле, которые могут быть полезны в существующей таблице Excel, вы можете выбрать импорт файла. Вот несколько ситуаций, в которых импорт текстового файла в Excel может оказаться полезным:
- Связь с внешними программами: Некоторые программы экспортируют отчеты в виде текстовых файлов. Если вы хотите внести данные, экспортированные из другой программы, вы можете выбрать импорт текстового файла в вашу таблицу.
- Перенос существующих данных: Если вы сообщили данные, введя их в текстовый файл, вы можете выбрать импорт этих данных непосредственно в Excel. Это сэкономит вам время, которое вы могли бы потратить на повторный ввод в лист вручную.
- Манипулирование данными: Если вы хотите произвести расчеты или упорядочить данные, перенос их в Excel может помочь вам в этом. Вы можете рассмотреть возможность импорта текстового файла в Excel, чтобы можно было вносить изменения в данные и делать выводы.
Как импортировать текстовый файл в Excel, открыв его в Excel
Вот как импортировать текстовый файл в Excel, открыв его:
- В окне Excel нажмите кнопку Файл и выберите Открыть .
- Щелкните выпадающее меню в диалоговом окне и перейдите к пункту Текстовые файлы . Выберите этот параметр, чтобы ограничить результаты поиска.
- Найдите текстовый файл, который вы хотите импортировать, и дважды щелкните его.
- Если ваш файл представляет собой .txt-файл, Excel запускает мастер импорта данных. При необходимости щелкните по нему и нажмите Завершить .
- A .файл csv автоматически заполняется в новой рабочей книге Excel.
Как импортировать текстовый файл в Excel, подключившись к нему
Вот как импортировать текстовый файл в Excel, подключившись к нему:
- Выберите ячейку, в которой должны появиться данные.
- Перейдите на Данные вкладка. По ссылке Получить внешние данные нажмите на кнопку Из текста кнопка.
- Excel откроет диалоговое окно Импорт данных. Найдите текстовый файл, который вы планируете импортировать, и нажмите кнопку Импорт кнопка.
- Пройдите через мастер импорта текста и следуйте его инструкциям.
- В диалоговом окне Импорт данных появится запрос о том, куда поместить данные. Чтобы ввести его в рабочий лист, нажмите кнопку Существующий рабочий лист а чтобы добавить его в первую ячейку нового рабочего листа, нажмите кнопку Новый рабочий лист .
- Откройте Свойства чтобы отформатировать данные в соответствии с вашими предпочтениями.
- Нажмите Ок .
Как импортировать текстовый файл в Excel с помощью мастера импорта текста
Вот как импортировать текстовый файл в Excel с помощью мастера импорта текста:
- Перейдите в раздел Данные вкладка.
- Нажмите на кнопку Получить внешние данные .
- Выберите из текста вариант.
- Сайт Импорт текста появляется окно. Найдите свой текстовый файл и дважды щелкните по нему, чтобы открыть диалоговое окно Мастер импорта текста поле.
- Выберите тип данных. Выберите Делимитированный разделяет ли пунктуация, символы или пробелы каждую точку данных в вашем текстовом файле.
- Укажите Excel, с какой строки следует начинать данные. Вы можете ввести номер строки или щелкнуть по нему мышью.
- Укажите Происхождение файла настройки. Если ваши данные используют уникальный набор символов, введите номер в Происхождение файла поле.
- Просмотр предварительного просмотра, создаваемого Excel.
- Выберите разделитель, который отделяет ваши точки данных.
- Нажмите кнопку Рассматривайте последовательные разделители как один флажок, если некоторые точки данных имеют два разделителя между собой, например запятую и пробел.
- Если есть символы, которые заключают каждую точку данных независимо от разделителей внутри, выберите Квалификатор текста . Например, если у вас есть имя и фамилия в кавычках, вы можете выбрать кавычки в качестве текстового классификатора, чтобы Excel знал, что нужно игнорировать запятую между ними и рассматривать полное имя как один элемент.
- Просмотрите предварительный просмотр, создаваемый Excel, еще раз.
- Щелкните Расширенный добавить специальное форматирование к данным. Выберите предпочтения, такие как формат даты и конвертация валюты.
- Выберите Завершить кнопка для создания данных.
- Выберите место для размещения данных в электронной таблице.
Советы по импорту текстовых файлов в Excel
Вот несколько советов, которые могут помочь вам успешно импортировать текстовые файлы в Excel:
Рассмотрим форматирование
Форматирование текстового файла и электронной таблицы, например пунктуация и длина столбцов, может повлиять на процесс импорта. Например, электронные таблицы с колонками фиксированной ширины обычно имеют разные параметры настройки в мастере импорта текста. Проанализируйте содержимое и выберите метод, который соответствует форматированию вашего текстового файла и форматированию, которое вы хотите видеть в вашей электронной таблице.
Изучите тип файла
Проверьте расширение вашего файла в конце его имени на рабочем столе. Два распространенных формата текстовых файлов: файлы с разделенными запятыми значениями (CSV), в которых запятые разделяют поля, и файлы с разделенным текстом (TXT), в которых разделители, например табуляция, разделяют группы текста. Если вы хотите использовать метод импорта, который требует другого символа для разделения полей, вы можете изменить разделитель. Шаги некоторых методов могут немного отличаться между текстовыми файлами с разделителями и значениями, разделенными запятыми.
Проверьте свои данные перед импортом
Некоторые из этих методов сканируют ваш файл на наличие важных символов, которые влияют на то, как Excel импортирует ваши данные. Например, если Excel ищет запятые в качестве разделителей, важно, чтобы все ваши запятые находились в правильном месте. Чтение данных в текстовом файле перед импортом в Excel может помочь вам подготовиться к процессу.
Ключевые слова:
- indeed.com