Метод Range.TextToColumns (Excel)
Анализирует столбец ячеек, содержащих текст, на несколько столбцов.
Синтаксис
expression. TextToColumns (Destination, DataType, TextQualifier, ПоследовательныйДелимитер, Tab, Точка с запятой, Пробел, Другое, OtherChar, FieldInfo, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers)
выражение: переменная, представляющая объект Range.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Destination | Необязательный | Variant | Объект Range , указывающий, где Microsoft Excel будет размещать результаты. Если диапазон больше одной ячейки, используется верхняя левая ячейка. |
DataType | Необязательный | XlTextParsingType | Формат текста для разделения на столбцы. |
TextQualifier | Необязательный | XlTextQualifier | Указывает, следует ли использовать одинарные, двойные или нет кавычки в качестве квалификатора текста. |
ПоследовательныйДелимитер | Необязательный | Variant | Значение true , чтобы в Excel рассматривались последовательные разделители как один разделитель. Значение по умолчанию — False. |
Вкладка | Необязательный | Variant | Значение true , чтобы класс DataType был xlDelimited , а символ табуляции — разделителем. Значение по умолчанию — False. |
Точка с запятой | Необязательный | Variant | Значение true , чтобы класс DataType был xlDelimited , а точка с запятой — разделителем. Значение по умолчанию — False. |
Запятой | Необязательный | Variant | Значение true , чтобы класс DataType был xlDelimited, а запятая — разделителем. Значение по умолчанию — False. |
Space | Необязательный | Variant | Значение true , чтобы класс DataType был xlDelimited , а символ пробела — разделителем. Значение по умолчанию — False. |
Other | Необязательный | Variant | Значение true , чтобы класс DataType был xlDelimited , а символ, заданный аргументом OtherChar , был разделителем. Значение по умолчанию — False. |
OtherChar | Необязательный | Variant | Требуется, если значение Other имеет значение True; символ разделителя, если значение Other имеет значение True. Если задано несколько символов, используется только первый символ строки; остальные символы игнорируются. |
Fieldinfo | Необязательный | Variant | Массив, содержащий сведения для анализа отдельных столбцов данных. Интерпретация зависит от значения DataType. Если данные разделены, этот аргумент представляет собой массив массивов двухэлементных массивов, при этом каждый двухэлементный массив задает параметры преобразования для определенного столбца. Первый элемент — это номер столбца (на основе 1), а второй — одна из констант XlColumnDataType , указывающая способ синтаксического анализа столбца. |
DecimalSeparator | Необязательный | Variant | Десятичный разделитель, который Microsoft Excel использует при распознавании чисел. По умолчанию используется системный параметр. |
ThousandsSeparator | Необязательный | Variant | Разделитель тысяч, который Excel использует при распознавании чисел. По умолчанию используется системный параметр. |
TrailingMinusNumbers | Необязательный | Variant | Числа, начинающиеся с символа "минус". |
Возвращаемое значение
Variant
Примечания
В следующей таблице показаны результаты импорта текста в Excel для различных параметров импорта. Числовые результаты отображаются в крайнем правом столбце.
Системный разделитель десятичных разрядов | Разделитель системных тысяч | Десятичное значение разделителя | Значение разделителя "Тысячи" | Исходный текст | Значение ячейки (тип данных) |
---|---|---|---|---|---|
Period | Запятой | Запятой | Period | 123.123,45 | 123,123,45 (числовое значение) |
Period | Запятой | Запятой | Запятой | 123.123,45 | 123.123,45 (текст) |
Запятой | Period | Запятой | Period | 123,123.45 | 123,123,45 (числовое значение) |
Period | Запятой | Period | Запятой | 123 123.45 | 123 123.45 (текст) |
Period | Запятой | Period | Space | 123 123.45 | 123,123,45 (числовое значение) |
Используйте константу xlEMDFormat перечисления XlColumnDataType , только если установлена и выбрана поддержка тайваньского языка. Константа xlEMDFormat указывает, что используются даты тайваньской эры.
Описатели столбцов могут находиться в любом порядке. Если указанный описатель столбца отсутствует для определенного столбца во входных данных, столбец анализируется с помощью параметра xlGeneralFormat . В этом примере третий столбец пропускается, первый столбец анализируется как текст, а остальные столбцы в исходных данных анализируются с помощью параметра xlGeneralFormat .
Array(Array(3, 9), Array(1, 2))
Если исходные данные содержат столбцы фиксированной ширины, первый элемент каждого двухэлейного массива задает начальную позицию символа в столбце (в виде целого числа; 0 (ноль) — это первый символ). Второй элемент массива с двумя элементами задает параметр синтаксического анализа для столбца в виде числа от 1 до 9, как указано ранее.
В следующем примере выполняется синтаксический анализ двух столбцов из файла фиксированной ширины. Первый столбец начинается с начала строки и расширяется на 10 символов. Второй столбец начинается с позиции 15 и переходит в конец строки. Чтобы избежать включения символов между позициями 10 и 15, Microsoft Excel добавляет пропущенную запись столбца.
Array(Array(0, 1), Array(10, 9), Array(15, 1))
Пример
В этом примере содержимое буфера обмена, содержащего текстовую таблицу с разделителями пробелами, преобразуется в отдельные столбцы на листе Sheet1. Вы можете создать простую таблицу с разделителями пробелами в Блокноте или WordPad (или другом текстовом редакторе), скопировать текстовую таблицу в буфер обмена, переключиться в Microsoft Excel, а затем запустить этот пример.
Worksheets("Sheet1").Activate
ActiveSheet.Paste
Selection.TextToColumns DataType:=xlDelimited, _
ConsecutiveDelimiter:=True, Space:=True
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.