Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
ICONO 150x150, Función Split String

Función Split String

| 1 comentario

¿Para qué sirve la función Split String?

La función Split puede dividir o desplegar un texto o expresión (String) entre sus partes o sus componentes utilizando un carácter delimitador.

Formato

Split (texto_a_dividir, delimitador, límite, comparar)

Parámetros

a) texto_a_dividir: Es el primer parámetro [obligatorio] de la función en el cual se coloca la oración que se quiere dividir

b) delimitador: Es el segundo parámetro [opcional] que se refiere al carácter delimitador con el cual se van a separar las palabras de la oración. Si no se coloca, se toma por descarte el “ “ (espacio) como separador.

c) límite: Es el tercer parámetro [opcional] que define el número máximo de palabras (o partes) que la oración será dividida. El valor que toma por descarte es el -1, lo que significa que la oración será dividida cuantas veces aparezca el delimitador.

d) comparar: Es el cuarto parámetro [opcional] que se refiere al método de comparación para usar en la evaluación de las oraciones. Puede tener cualquiera de estos dos valores:

 

Constante

Valor

Descripción

CompareMethod.Binary

0

Corresponde a una comparación binaria donde cada carácter deberá corroborarse consigo mismo

CompareMethod.Text

1

Corresponde a una comparación textual

Algunas consideraciones importantes

– La función de Split devuelve un String Array y no un String

– Si omites el argumento de “comparar” entonces la expresión Split usa un método de comparación binaria por descarte.

– Si el “texto_a_dividir” que pasas a dividir no tiene longitud, entonces retorna un único elemento conteniendo una frase sin longitud.

– Si el “delimitador” no se encuentra dentro del “texto_a_dividir” entonces la función retorna un único elemento conteniendo solo el “texto_a_dividir” como es.

Ejemplos de aplicación en Macros (VBA)

 1. General

Sub test()

Dim WrArray () As String

WedArray() = Split («Primera prueba de Split»)

End Sub

En este código, como no se especifica el delimitador, la función separará la expresión cada vez que se presente un «»(espacio).

Ejemplo 1.

Sub ejemplo1()

Dim WrdArray() As String

Dim expresion As String

expresion = «A|B|C»

WrdSrray() = Split (expresion,»|»)

Ejemplo 2

Separar la expresión “Bienvenido al curso de Excel” en las palabras que lo componen utilizando la función de Split, y mostrar el resultado en una ventana de mensaje (MsgBox).

Sub ejemplo2()

Dim WrdArray() As String

Dim expresion As String

expresion = «Bienvenido al curso de Excel»

WrdArray() = Split(expresion)

For i = LBound(WrdArray) To UBound(WrdArray)

strg = strg & vbNewLine & «Palabra Nro. » & i + 1 & » – » & WrdArray(i)

Next i

MsgBox strg

End Sub

Split2, Función Split String

Ejemplo 3.

Utilizar la función de String para extraer solo la tercera palabra de la expresión “Bienvenido al curso de Excel”

Sub ejemplo3()

Dim tercerap As String

Dim expresion As String

expresion = «Bienvenido al curso de Excel»

tercerap = Split(expresion)(2)

MsgBox «La tercera palabra es: » & tercerap

End Sub

Split3, Función Split String

Ejemplo 4.

Utilizando el parámetro de «límite».

Sub ejemplo4()

Dim WrdArray() As String

Dim expresion As String

expresion = «Bienvenido al curso de Excel»

WrdArray() = Split(expresion, , 3)

For i = LBound(WrdArray) To UBound(WrdArray)

strg = strg & vbNewLine & «Parte No. » & i + 1 & » – » & WrdArray(i)

Next i

MsgBox strg

End Sub

Split4, Función Split String

Ejemplo 5.

Contar el número de palabras que se extraen.

Sub Contar_Palabras()

Dim WrdArray() As String

Dim expresion As String

expresion = «Bienvenido al curso de Excel»

WrdArray() = Split(expresion)

MsgBox («Cantidad de palabras en la expresión: » & UBound(WrdArray()) + 1)

End Sub

Split5, Función Split String

Split String

 

Un comentario

  1. HOLA
    Donde puedo comprar el libro completo? soy de buenos aires Argentina

Deja un comentario

Los campos requeridos estan marcados con *.