Método Range.TextToColumns (Excel)
Redistribuye una columna de celdas que contiene texto en varias columnas.
Sintaxis
expresión. TextToColumns (Destination, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers)
expresión Variable que representa un objeto Range.
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
Destination | Opcional | Variant | Objeto Range que especifica el lugar en que Microsoft Excel colocará los resultados. Si el rango es mayor que una sola celda, se usará la celda del extremo superior izquierdo. |
DataType | Opcional | XlTextParsingType | Formato del texto que se va a dividir en columnas. |
TextQualifier | Opcional | XlTextQualifier | Especifica si se va a usar comillas simples, dobles o ninguna como calificador de texto. |
ConsecutiveDelimiter | Opcional | Variant | True para que Excel considere delimitadores consecutivos como un delimitador. El valor predeterminado es False. |
Tab | Opcional | Variant | True para que DataType tenga el valor xlDelimited y para que el carácter de tabulación sea un delimitador. El valor predeterminado es False. |
Semicolon | Opcional | Variant | True para que DataType tenga el valor xlDelimited y para que el carácter de dos puntos (:) sea un delimitador. El valor predeterminado es False. |
Comma | Opcional | Variant | True para que DataType tenga el valor xlDelimited y para que el carácter de coma (,) sea un delimitador. El valor predeterminado es False. |
Space | Opcional | Variant | True para que DataType tenga el valor xlDelimited y para que el carácter de espacio sea un delimitador. El valor predeterminado es False. |
Other | Opcional | Variant | True para que DataType tenga el valor xlDelimited y para que el carácter especificado por el argumento OtherChar sea un delimitador. El valor predeterminado es False. |
OtherChar | Opcional | Variant | Obligatorio si Otro es True; el carácter delimitador cuando Other es True. Si se especifica más de un carácter, solo se usará el primero de la cadena de caracteres y no se tendrá en cuenta el resto. |
FieldInfo | Opcional | Variant | Una matriz que contiene información de análisis para las columnas de datos individuales. La interpretación depende del valor de DataType. Si los datos están delimitados, el argumento será una matriz de matrices de dos elementos, cada una de las cuales especificará las opciones de conversión de una columna en particular. El primer elemento es el número de columna (basado en 1) y el segundo elemento es una de las constantes XlColumnDataType que especifica cómo se analiza la columna. |
DecimalSeparator | Opcional | Variant | Separador decimal utilizado por Microsoft Excel para identificar las cifras. El valor predeterminado es el de la configuración del sistema. |
ThousandsSeparator | Opcional | Variant | Separador de miles utilizado por Excel para identificar las cifras. El valor predeterminado es el de la configuración del sistema. |
TrailingMinusNumbers | Opcional | Variant | Números que comienzan con un signo menos. |
Valor devuelto
Variant
Observaciones
En la siguiente tabla se muestran los resultados obtenidos al importar texto a Excel con diferentes opciones de importación. Los resultados numéricos se muestran en la columna de la derecha.
Separador de decimales del sistema | Separador de miles del sistema | Valor del separador de decimales | Valor del separador de miles | Texto original | Valor de la celda (tipo de datos) |
---|---|---|---|---|---|
Period | Coma | Coma | Punto | 123.123,45 | 123,123.45 (numérico) |
Punto | Coma | Coma | Coma | 123.123,45 | 123.123,45 (texto) |
Coma | Punto | Coma | Punto | 123.123,45 | 123,123.45 (numérico) |
Punto | Coma | Punto | Coma | 123 123.45 | 123 123.45 (texto) |
Punto | Coma | Punto | Espacio | 123 123.45 | 123,123.45 (numérico) |
Use la constante xlEMDFormat de la enumeración XlColumnDataType solo si la compatibilidad con el lenguaje taiwanés está instalada y seleccionada. La constante xlEMDFormat especifica que se usan fechas de era de Taiwán.
Los especificadores de columna pueden tener cualquier orden. Si un especificador de columna dado no está presente en una columna en particular de los datos de entrada, la columna se redistribuirá usando la configuración xlGeneralFormat. En este ejemplo se omite la tercera columna, la primera se redistribuye en forma de texto y las columnas restantes de los datos de origen se redistribuyen con la configuración xlGeneralFormat.
Array(Array(3, 9), Array(1, 2))
Si los datos de origen tienen columnas de ancho fijo, el primer elemento de cada matriz de dos elementos especificará la posición del primer carácter de la columna (como un entero; un carácter 0 (cero) es el primer carácter). El segundo elemento de la matriz de dos elementos especifica la opción de análisis de la columna como un número del 1 al 9, como se mencionó anteriormente.
En el siguiente ejemplo se redistribuyen dos columnas de un archivo de ancho fijo, empezando la primera columna al principio de la línea y extendiéndose diez caracteres. La segunda columna empieza en la posición 15 y va hasta el final de la línea. Para evitar que se incluyan los caracteres comprendidos entre las posiciones 10 y 15, Microsoft Excel agrega una entrada de salto de columna.
Array(Array(0, 1), Array(10, 9), Array(15, 1))
Ejemplo
Este ejemplo convierte el contenido del Portapapeles, que contiene una tabla de texto delimitada por espacios, en columnas individuales de Sheet1. Puede crear una tabla sencilla delimitada por espacios en el Bloc de notas o en WordPad (u otro editor de textos), copiarla en el Portapapeles, cambiar a Microsoft Excel y ejecutar este ejemplo.
Worksheets("Sheet1").Activate
ActiveSheet.Paste
Selection.TextToColumns DataType:=xlDelimited, _
ConsecutiveDelimiter:=True, Space:=True
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.