Более быстрое преобразование текстовых файлов (Microsoft Excel)
Пэт интересовался, как изменить тип данных столбца по умолчанию с «общего» на «текстовый» для всех столбцов текстового файла с разделителями-запятыми. Изменение формата каждого столбца, особенно если их много, может быть в лучшем случае утомительным.
К сожалению, изменить значение по умолчанию невозможно. Однако изменение типов данных столбца может быть выполнено намного проще, если применить некоторые из функций «выбор и выбор», доступных в большинстве программ Windows. Выполните следующие действия:
-
Начните импортировать текстовый файл с разделителями-запятыми, как обычно.
-
Когда отображается диалоговое окно, в котором можно изменить типы данных столбца, выберите первый столбец в таблице.
-
Прокрутите диалоговое окно вправо, чтобы был виден последний столбец в таблице.
-
Удерживая нажатой клавишу Shift, щелкните последний столбец. Теперь все столбцы должны быть выделены.
-
Измените тип данных на Текст.
-
Продолжайте импорт, как обычно.
Если вы предпочитаете еще более быстрый способ ввода информации из текстового файла с разделителями-запятыми, вы можете сделать это с помощью макроса, полностью пропустив фильтры импорта Excel. Следующий макрос, озаглавленный (достаточно уместно) Import, сделает свое дело:
Sub Import() Open "d:\data.txt" For Input As #1 R = 1 While Not EOF(1) 'Scan file line by line C = 1 Entry = "" Line Input #1, Buffer Length = Len(Buffer) i = 1 While i <= Length 'split string into cells If (Mid(Buffer, i, 1)) = "," Then With Application.Cells(R, C) .NumberFormat = "@" 'Text formatting .Value = Entry End With C = C + 1 Entry = "" Else Entry = Entry + Mid(Buffer, i, 1) End If i = i + 1 Wend If Len(Entry) > 0 Then With Application.Cells(R, C) .NumberFormat = "@" 'Text formatting .Value = Entry End With End If R = R + 1 Wend Close #1 End Sub
Обратите внимание, что вы можете изменить первую строку макроса, чтобы она представляла имя файла, который вы импортируете. Вы также должны понимать, что этот макрос работает с простейшими текстовыми файлами с разделителями-запятыми. Если файл был создан с кавычками вокруг каждого поля (как это иногда бывает), то макрос не даст желаемых результатов и его нужно будет изменить, чтобы компенсировать кавычки. Или, как альтернатива, вы можете просто использовать поиск и удаление кавычек после того, как макрос импортирует информацию.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (7889) применим к Microsoft Excel 2007, 2010, 2013 и 2016.
Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Faster_Text_File_Conversions [Ускоренное преобразование текстовых файлов]
.