Excel: agregar texto y número en una posición específica de la celda
En Excel, agregar textos o números a las celdas es una tarea muy habitual. Por ejemplo, añadir espacios entre nombres, agregar prefijos o sufijos a las celdas, o insertar guiones en números sociales. En este tutorial se enumeran casi todos los escenarios posibles para agregar en Excel y se proporcionan los métodos correspondientes para cada caso.
Nota
En este tutorial, he creado algunos ejemplos para explicar los métodos; puedes cambiar las referencias según lo necesites al usar el código VBA o las fórmulas que aparecen a continuación, o puedes descargar las muestras para probar los métodos directamente.
Haz clic para descargar el archivo de muestra
En esta sección se muestran diferentes métodos para agregar caracteres al inicio de cada celda, como se muestra en la siguiente captura de pantalla:
1.1 Agregar al principio de las celdas usando fórmula
Aquí puedes elegir una de las siguientes tres fórmulas:
Fórmula1: Operador de concatenación "&"
Une varios textos utilizando el carácter ampersand "&".
"texto"&celda
Fórmula2: Función CONCATENAR
La función CONCATENAR se utiliza para unir textos.
CONCATENAR("texto",celda)
Fórmula3: Función CONCAT
Esta es una función nueva que solo está disponible en Excel2019, Office365 y Excel online.
CONCAT("texto",celda)
En las fórmulas genéricas: celda es la referencia de celda al texto al que deseas agregar el prefijo, y texto es el texto que se agregará a la celda.
Usando el ejemplo anterior, puedes utilizar las fórmulas en la barra de fórmulas así:
"&"
=$E$3&B3 o ="Iphone"&B3
Función CONCATENAR
=CONCATENAR($E$3,B3) o =CONCATENAR("Iphone",B3)
Función CONCAT
=CONCAT($E$3,B3) o =CONCAT("Iphone",B3)
Pulsa Enter para obtener el resultado, luego arrastra el controlador de autorrelleno hacia abajo para agregar texto a cada celda del rango B3:B6.
Atención: El texto debe ir entre comillas dobles, de lo contrario la fórmula devolverá el error #NOMBRE?. Si usas la referencia de celda a un texto, recuerda utilizar la referencia absoluta; puedes pulsar la tecla F4 para cambiar la referencia relativa a absoluta. |
1.2 Agregar al principio de las celdas con Relleno rápido
Si utilizas Excel2013 o versiones posteriores, la potente función Relleno rápido puede completar las celdas automáticamente basándose en los datos que has introducido arriba.
Elige una celda junto a la primera celda de datos original, escribe manualmente el primer dato con el texto de prefijo como se muestra a continuación:
Luego, en la celda inferior, continúa escribiendo el segundo dato con el texto de prefijo. Mientras escribes, aparecerá una lista en color gris; pulsa Enter para permitir que Relleno rápido complete los datos automáticamente.
Si la lista de vista previa no se genera, ve a la pestaña Inicio y haz clic en Rellenar > Relleno rápido para ejecutarlo manualmente.
1.3 Agregar al principio de las celdas usando código VBA
Si tienes experiencia con código VBA, aquí se muestra un código VBA para agregar texto al principio de cada celda en un rango.
1. Selecciona el rango de celdas al que deseas agregar el texto de prefijo, luego pulsa las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Luego, en la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el nuevo módulo.
VBA: Agregar al principio de las celdas
Sub AppendToExistingOnLeft()
Dim c As Range
For Each c In Selection
If c.Value <> "" Then c.Value = "Iphone" & c.Value
Next
End Sub
Atención: en el script del código, Iphone es el texto que deseas agregar al principio de las celdas seleccionadas, cámbialo según lo necesites. |
4. Pulsa F5 o haz clic en Ejecutar botón en la ventana para activar el código VBA.
Ahora todas las celdas seleccionadas tienen el texto "Iphone" agregado al principio.
Además de agregar texto al inicio de las celdas, también es común agregar texto al final. Aquí tomamos como ejemplo agregar la unidad al final de cada celda, como se muestra en la siguiente captura de pantalla:
2.1 Agregar al final de las celdas usando fórmula
Aquí puedes elegir una de las siguientes tres fórmulas:
Fórmula1: Operador de concatenación "&"
Une varios textos utilizando el carácter ampersand "&".
celda&"texto"
Fórmula2: Función CONCATENAR
La función CONCATENAR se utiliza para unir textos.
CONCATENAR(celda,"texto")
Fórmula3: Función CONCAT
Esta es una función nueva que solo está disponible en Excel2019, Office365 y Excel online.
CONCAT(celda,"texto")
En las fórmulas genéricas: celda es la referencia de celda al texto al que deseas agregar el sufijo, y texto es el texto que se agregará a la celda.
Usando el ejemplo anterior, puedes utilizar las fórmulas en la barra de fórmulas así:
"&"
=B3&$E$3 o =B3&"Kg"
Función CONCATENAR
=CONCATENAR(B3, $E$3) o =CONCATENAR(B3, "Kg")
Función CONCAT
=CONCAT(B3, $E$3) o =CONCAT(B3, "Kg")
Pulsa Enter para obtener el resultado, luego arrastra el controlador de autorrelleno hacia abajo para agregar texto al final de cada celda del rango B3:B6.
Atención: El texto debe ir entre comillas dobles, de lo contrario la fórmula devolverá el error #NOMBRE?. Si usas la referencia de celda a un texto, recuerda utilizar la referencia absoluta; puedes pulsar la tecla F4 para cambiar la referencia relativa a absoluta. |
2.2 Agregar al final de las celdas con Relleno rápido
Si utilizas Excel2013 o versiones posteriores, la potente función Relleno rápido puede completar las celdas automáticamente basándose en los datos que has introducido arriba.
Elige una celda junto a la primera celda de datos original, escribe manualmente el primer dato con el texto de sufijo como se muestra a continuación:
Luego activa la celda debajo del primer resultado, haz clic en Datos > Relleno rápido, todas las celdas inferiores, incluida la celda activa, se rellenarán automáticamente.
2.3 Agregar al final de las celdas usando código VBA
Aquí tienes un código VBA que puede agregar texto al final de cada celda en un rango.
1. Selecciona el rango de celdas al que deseas agregar el texto de sufijo, luego pulsa las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Luego, en la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el nuevo módulo.
VBA: Agregar al final de las celdas
Sub AppendToExistingOnRight()
Dim c As Range
For Each c In Selection
If c.Value <> "" Then c.Value = c.Value & "Kg"
Next
End Sub
Atención: en el script del código, Kg es el texto que deseas agregar al final de las celdas seleccionadas, cámbialo según lo necesites. |
4. Pulsa F5 o haz clic en Ejecutar botón en la ventana para activar el código VBA.
Ahora el texto "Kg" se ha agregado al final de cada celda.
Para la mayoría, agregar textos al inicio o al final de las celdas es sencillo, pero agregar textos en el medio puede ser algo más complicado. Por ejemplo, como se muestra en la siguiente captura, agregar un delimitador, como dos puntos :, al final del segundo carácter de cada celda en el rango B3:B7.
3.1 Agregar después del enésimo carácter de la cadena mediante fórmula
Aquí tienes cuatro fórmulas que puedes usar para realizar esta tarea, elige la que prefieras:
Fórmula1: Combinar las funciones IZQUIERDA y DERECHA
IZQUIERDA(celda, n) & ":" & DERECHA(celda, LARGO(celda) -n)
Fórmula2: Combinar CONCATENAR(CONCAT), DERECHA y LARGO
CONCATENAR(IZQUIERDA(celda, n), ":", DERECHA(celda, LARGO(celda) -n))
O bien
CONCAT(IZQUIERDA(celda, n), ":", DERECHA(celda, LARGO(celda) -n))
Fórmula3: Función REEMPLAZAR
REEMPLAZAR(celda, n+1,0, "texto")
En las fórmulas genéricas: celda es la referencia de celda al texto al que deseas agregar texto en el medio, texto es el texto que se agregará a la celda, y n es el número que define después de qué carácter de la cadena de texto quieres agregar el texto.
Para resolver el ejemplo anterior, utiliza las fórmulas así:
Combinar las funciones IZQUIERDA y DERECHA
=LEFT(B3,2) & ":" & RIGHT(B3, LEN(B3) -2) o =LEFT(B3,2) & $E$3 & RIGHT(B3, LEN(B3) -2)
Combinar CONCATENAR(CONCAT), DERECHA y LARGO
=CONCATENATE(LEFT(B3,2), ":", RIGHT(B3, LEN(B3) -2)) o =CONCAT (LEFT(B3,2), ":", RIGHT(B3, LEN(B3) -2))
Función REEMPLAZAR
=REPLACE(B3,2+1,0, ":") o =REPLACE(B3,2+1,0, $E$3)
Pulsa Enter para obtener el resultado, luego arrastra el controlador de autorrelleno hacia abajo para agregar texto después del segundo carácter de cada celda del rango B3:B7.
Atención: El texto debe ir entre comillas dobles, de lo contrario la fórmula devolverá el error #NOMBRE?. Si usas la referencia de celda a un texto, recuerda utilizar la referencia absoluta; puedes pulsar la tecla F4 para cambiar la referencia relativa a absoluta. |
3.2 Agregar después del enésimo carácter de la cadena con Relleno rápido
Si utilizas Excel2013 o versiones posteriores, Relleno rápido puede completar las celdas automáticamente basándose en los datos que has introducido arriba.
Elige una celda junto a la primera celda de datos original, escribe manualmente el primer dato con dos puntos después del segundo carácter como se muestra a continuación:
Luego activa la celda debajo del primer resultado, pulsa Ctrl + E para activar Relleno rápido y todas las celdas inferiores, incluida la celda activa, se rellenarán automáticamente.
Atención: Si usas sistema MAC, pulsa Comando + E. |
3.3 Agregar después del enésimo carácter de la cadena usando código VBA
Un código VBA también puede realizar esta tarea.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Luego, en la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el nuevo módulo.
VBA: Agregar en el medio de las celdas
Sub AddToMidduleOfString()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = VBA.Left(Rng.Value, 2 & ":" & VBA.Mid(Rng.Value, 3, VBA.Len(Rng.Value) - 1)
Next
End Sub
Atención: en el script del código,2 es el número que define la posición después de la cual deseas agregar texto,: es el texto que deseas agregar,3 es la suma de2 y la longitud del texto que agregas. Por ejemplo, para agregar "and" después del primer carácter de la cadena "A B", el script debe ser Rng.Value = VBA.Left(Rng.Value,1) & "and" & VBA.Mid(Rng.Value,4, VBA.Len(Rng.Value) -1) |
4. Pulsa F5 o haz clic en Ejecutar botón en la ventana para activar el código VBA. Aparecerá un cuadro de diálogo para seleccionar las celdas donde agregar texto.
5. Haz clic en OK. Ahora el texto ":" se ha agregado después del segundo carácter de cada celda en el rango B19:B23.
Si estás cansado de fórmulas y VBA, puedes probar una herramienta potente y práctica, Kutools para Excel, que puede ayudarte con su Agregar texto función.
Esta función Agregar texto puede:
- Agregar texto antes del primer carácter
- Agregar texto después del último carácter
- Agregar texto en posiciones especificadas
- Extensión
Agregar texto antes de las letras mayúsculas
Agregar texto antes de las letras minúsculas
Agregar texto antes de las letras mayúsculas y minúsculas
Agregar texto antes de los números
Selecciona las celdas a las que deseas agregar texto y luego aplica Agregar texto haciendo clic en Kutools > Texto > Agregar texto.
4.1 Agregar texto antes del primer carácter o después del último carácter
En el Agregar texto diálogo, escribe el texto que deseas agregar a las celdas en el Texto cuadro de texto, luego marca Antes del primer carácter en la Posición sección.
Haz clic en Aplicar o Ok para finalizar la adición.
Para agregar texto después del último carácter, escribe el texto que deseas agregar a las celdas en el Texto cuadro de texto, luego marca Después del último carácter en la Posición sección.
Haz clic en Aplicar o Ok para finalizar la adición.
4.2 Agregar texto en la(s) posición(es) especificada(s)
A veces, puedes querer agregar texto en el medio de la celda o en varias posiciones de la celda. Por ejemplo, agregar el separador "-" después del tercer y séptimo dígito de los números sociales como se muestra en la siguiente captura de pantalla:
En el Agregar texto diálogo, escribe el texto en Texto cuadro de texto y marca Personalizado opción, luego escribe las posiciones separadas por comas en el cuadro de texto y haz clic en Ok o Aplicar.
4.3 Extensión de la utilidad Agregar texto
Además de agregar texto en las posiciones normales (inicio, final y posición especificada), la utilidad Agregar texto también permite agregar texto
- Antes de las letras mayúsculas
- Antes de las letras minúsculas
- Antes de las letras mayúsculas y minúsculas
- Antes de los números
En el Agregar texto diálogo, escribe el texto en Texto cuadro de texto y marca Avanzado opción, luego haz clic en el menú desplegable inferior para elegir la operación que necesites.
Esta sección proporciona fórmulas para agregar texto antes o después del primer texto específico que aparece en Excel.
5.1 Agregar texto antes del primer texto específico
Por ejemplo, quieres agregar el texto "(venta)" antes del primer texto "precio" en la celda, como se muestra en las siguientes capturas:
En Excel, las funciones REEMPLAZAR y SUSTITUIR pueden resolver esta tarea.
Función REEMPLAZAR
REEMPLAZAR(celda,ENCONTRAR("buscar_texto",celda),0,"agregar_texto")
Función SUSTITUIR
SUSTITUIR(celda,"buscar_texto","reemplazar_texto",1)
En este caso, utiliza las fórmulas anteriores así:
=REPLACE(B4,FIND("price",B4),0,"(sale)")
O bien
=SUBSTITUTE(B4,"price","(sale)price",1)
Los argumentos de la fórmula en este caso son
Celda: B4,
Buscar_texto: price,
Agregar_texto: (sale),
Reemplazar_texto:(sale)price.
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno sobre las celdas que necesiten esta fórmula.
5.2 Agregar texto después del primer texto específico
Por ejemplo, quieres agregar el símbolo de moneda "$" después del primer dos puntos ":" en la celda, como se muestra en las siguientes capturas:
En Excel, las funciones REEMPLAZAR y SUSTITUIR pueden resolver esta tarea.
Función REEMPLAZAR
REEMPLAZAR(celda,ENCONTRAR("buscar_texto",celda),longitud_buscar_texto,"reemplazar_texto")
Función SUSTITUIR
SUSTITUIR(celda,"buscar_texto","reemplazar_texto")
En este caso, utiliza las fórmulas anteriores así:
=REPLACE(B12,FIND(":",B12),1,":$")
O bien
=SUBSTITUTE(B12,":",":$")
Los argumentos de la fórmula en este caso son
Celda: B12,
Buscar_texto: :,
Reemplazar_texto::$.
Longitud_buscar_texto:1
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno sobre las celdas que necesiten esta fórmula.
En esta parte del tutorial se presentan tres métodos diferentes (fórmula, Buscar y Reemplazar, VBA) para ayudarte a agregar caracteres antes o después de cada palabra de una celda.
Agregar caracteres antes de cada palabra |
![]() |
Agregar caracteres después de cada palabra |
![]() |
6.1 Agregar carácter(es) antes o después de cada palabra mediante fórmula
La función SUSTITUIR puede utilizarse para resolver esta tarea, las fórmulas generales son las siguientes:
Agregar antes de cada palabra
"carácter"&SUSTITUIR(cadena, " "," carácter")
Agregar después de cada palabra
SUSTITUIR(cadena," ","carácter ")&"carácter"
Por ejemplo, para agregar "+" antes de cada palabra en la lista B3:B6, utiliza la fórmula:
="+"&SUBSTITUTE(B3, " "," +")
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno hacia abajo para obtener todos los resultados.
Por ejemplo, para agregar ($) después de cada palabra de la lista B11:B14, utiliza la siguiente fórmula:
=SUBSTITUTE(B11," ","($) ")&"($)"
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno hacia abajo para obtener todos los resultados.
6.2 Agregar carácter(es) antes o después de cada palabra con Buscar y Reemplazar
Si deseas agregar caracteres antes de cada palabra excepto la primera, o después de cada palabra excepto la última, como se muestra en la siguiente captura, la utilidad Buscar y Reemplazar de Excel puede hacerlo.
Agregar antes de cada palabra excepto la primera
Agregar después de cada palabra excepto la última
1. Selecciona las celdas a las que deseas agregar caracteres antes o después de cada palabra, luego pulsa Ctrl + H para abrir el cuadro de diálogo Buscar y Reemplazar.
2. Escribe un espacio en el cuadro Buscar lo siguiente, luego escribe los nuevos caracteres con espacio en el cuadro Reemplazar con y finalmente haz clic en el botón Reemplazar Todo.
Cálculo | General | Ejemplo |
Agregar caracteres antes de cada palabra | Agregar nuevos caracteres después de un espacio | Agregar (venta) antes de cada palabra |
Cálculo | General | Ejemplo |
Agregar caracteres después de cada palabra | Nuevos caracteres seguidos de un espacio | Agregar - después de cada palabra |
Aquí se proporcionan dos códigos VBA para agregar caracteres antes o después de cada palabra. Ejecuta el código siguiendo estos pasos.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. En la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el módulo.
Agregar antes de cada palabra
Sub InsertCharBeforeWord()
'UpdateByExtendOffice
Dim ws As Worksheet
Dim xRg As Range
Dim xSRg As Range
Dim xCell As Range
Dim xInStr As String
Dim xArr As Variant
Dim xValue As String
On Error Resume Next
Set xSRg = Application.Selection
Set xRg = Application.InputBox("Select cells(continuous):", "Kutools for Excel", xSRg.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
xInStr = Application.InputBox("Type characters you want to add:", "Kutools for Excel", "", , , , , 2)
If StrPtr(xInStr) = 0 Then Exit Sub
Application.ScreenUpdating = False
For Each xCell In xRg
xArr = Split(xCell.Text, " ")
xValue = ""
For Each xStr In xArr
If Trim(xStr) <> "" Then
If xValue = "" Then
xValue = xInStr & Trim(xStr)
Else
xValue = xValue & " " & xInStr & Trim(xStr)
End If
End If
Next
xCell.Value = xValue
Next
Application.ScreenUpdating = True
End Sub
Agregar después de cada palabra
Sub InsertCharAfterWord()
'UpdateByExtendOffice
Dim ws As Worksheet
Dim xRg As Range
Dim xSRg As Range
Dim xCell As Range
Dim xInStr As String
Dim xArr As Variant
Dim xValue As String
On Error Resume Next
Set xSRg = Application.Selection
Set xRg = Application.InputBox("Select cells(continuous):", "Kutools for Excel", xSRg.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
xInStr = Application.InputBox("Type characters you want to add:", "Kutools for Excel", "", , , , , 2)
If StrPtr(xInStr) = 0 Then Exit Sub
Application.ScreenUpdating = False
For Each xCell In xRg
xArr = Split(xCell.Text, " ")
xValue = ""
For Each xStr In xArr
If Trim(xStr) <> "" Then
If xValue = "" Then
xValue = Trim(xStr) & xInStr
Else
xValue = xValue & " " & Trim(xStr) & xInStr
End If
End If
Next
xCell.Value = xValue
Next
Application.ScreenUpdating = True
End Sub
4. Pulsa F5 para ejecutar el código (o puedes hacer clic en Ejecutar botón ), aparecerá un cuadro de diálogo solicitando seleccionar las celdas continuas para trabajar, haz clic en OK.
5. En el segundo cuadro de diálogo emergente, escribe los caracteres que deseas agregar y haz clic en OK.
Luego los caracteres se agregarán al principio o al final de cada palabra.
A veces, puedes querer agregar texto entre cada carácter. En esta sección se muestran dos escenarios: uno es agregar texto entre cada carácter, y otro es agregar espacio entre cada número.
7.1 Agregar texto entre cada carácter/dígito con función definida por el usuario
Para agregar caracteres entre cada carácter de una cadena, la función definida por el usuario puede ayudarte.
En este caso, agregamos un espacio entre cada carácter.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. En la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el módulo.
Agregar texto entre caracteres
Function AddText(Str As String) As String
Dim i As Long
For i = 1 To Len(Str)
AddText = AddText & Mid(Str, i, 1) & " "
Next i
AddSpace = Trim(AddSpace)
End Function
4. Guarda el código y cierra la ventana para volver a la hoja de cálculo, luego escribe la siguiente fórmula en una celda donde quieras mostrar el resultado.
=AddText(B3)
B3 es la celda que contiene la cadena a la que deseas agregar espacio entre caracteres.
5. Pulsa Enter para obtener el resultado, arrastra el controlador de autorrelleno sobre las celdas para obtener otros resultados según lo necesites.
Atención: 1) En el código VBA, puedes cambiar el " " por otro texto según lo necesites; por ejemplo, cámbialo por "-" para agregar - entre caracteres. 2) El código agregará el nuevo texto después de cada carácter. Puedes eliminar el último texto agregado si no lo necesitas utilizando la siguiente fórmula. Para más detalles sobre la fórmula, visita: ¿Cómo eliminar los primeros o últimos N caracteres de una celda o cadena en Excel? IZQUIERDA(celda,LARGO(celda)-longitud_texto) |
7.2 Agregar espacio entre cada número mediante fórmula
Si deseas agregar espacio entre los dígitos de una cadena que es un valor numérico, puedes usar la función TEXTO.
Atención: los números del rango al que deseas agregar espacio deben tener la misma longitud, de lo contrario, algunos resultados pueden ser incorrectos. |
Por ejemplo, si tienes una lista de números de8 dígitos en el rango B10:B12, selecciona una celda donde colocar el resultado y escribe la siguiente fórmula:
=TEXT(B10,"# # # # # # # #")
Pulsa Enter luego arrastra el controlador de autorrelleno sobre las demás celdas.
Si la longitud de los números es5, la fórmula será =TEXT(B10,"# # # # #").
Si deseas agregar carácter(es) entre cada palabra, por ejemplo, agregar espacio entre nombre, segundo nombre y apellido como se muestra en la siguiente captura, puedes usar una función definida por el usuario.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. En la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el módulo.
Agregar caracteres entre palabras
Function AddCharacters(pValue As String) As String
'UpdatebyExtendoffice20160908
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
If xAsc >= 65 And xAsc <= 90 Then
xOut = xOut & " " & VBA.Mid(pValue, i, 1)
Else
xOut = xOut & VBA.Mid(pValue, i, 1)
End If
Next
AddCharacters = xOut
End Function
4. Guarda el código y cierra la ventana para volver a la hoja de cálculo, luego escribe la siguiente fórmula en una celda donde quieras mostrar el resultado.
=AddCharacters(B3)
B3 es la celda que contiene la cadena a la que deseas agregar espacio entre palabras.
5. Pulsa Enter para obtener el resultado, arrastra el controlador de autorrelleno sobre las celdas para obtener otros resultados según lo necesites.
Atención: en el código VBA, puedes cambiar el " " por otro texto según lo necesites; por ejemplo, cámbialo por "-" para agregar - entre palabras. |
Para agregar un carácter específico entre textos y números como se muestra en la siguiente captura, aquí se ofrecen dos métodos.
9.1 Agregar carácter entre textos y números mediante fórmula
Si los textos están delante de los números, la fórmula genérica es
ESPACIO(REEMPLAZAR(cadena,MÍN(ENCONTRAR({1,2,3,4,5,6,7,8,9,0},cadena&"1234567890")),0,"-"))
Usando el caso anterior como ejemplo, utiliza la fórmula así:
=TRIM(REPLACE(B4,MIN(FIND({1,2,3,4,5,6,7,8,9,0},B4&"1234567890")),0,"-"))
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno sobre las demás celdas para aplicar la fórmula.
Si los números están delante de los textos, la fórmula genérica es
IZQUIERDA(cadena,SUMA(LARGO(cadena)-LARGO(SUSTITUIR(cadena,{0,1,2,3,4,5,6,7,8,9},""))))&"."&DERECHA(cadena,LARGO(B13)- SUMA(LARGO(cadena)-LARGO(SUSTITUIR(cadena, {0,1,2,3,4,5,6,7,8,9}, ""))))
Usando el caso anterior como ejemplo, utiliza la fórmula así:
=LEFT(B13,SUM(LEN(B13)-LEN(SUBSTITUTE(B13,{0,1,2,3,4,5,6,7,8,9},""))))&"."&RIGHT(B13,LEN(B13)- SUM(LEN(B13)-LEN(SUBSTITUTE(B13, {0,1,2,3,4,5,6,7,8,9}, ""))))
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno sobre las demás celdas para aplicar la fórmula.
9.2 Agregar carácter entre textos y números con Relleno rápido
Si utilizas Excel2013 o versiones posteriores, Relleno rápido también puede ayudarte a agregar carácter(es) entre textos y números.
Junto a los datos originales, escribe el nuevo dato con el carácter agregado entre textos y números. Luego pulsa Enter para pasar a la siguiente celda del primer resultado.
Y pulsa Ctrl + E para activar Relleno rápido.
Extensión
Este tutorial también enumera algunos escenarios sobre agregar texto que podemos encontrar en la vida diaria o en el trabajo.
A veces necesitas agregar separadores como guiones a una serie de números de teléfono o números sociales como se muestra en la siguiente captura. Escribirlos manualmente sería tedioso si hay cientos de números. En esta sección se presentan tres métodos rápidos para resolverlo.
10.1 Agregar guiones a los números mediante fórmula
Aquí tienes dos fórmulas que pueden agregar guiones rápidamente a los números. Para agregar guiones después del tercer y sexto número en la celda B3, utiliza las siguientes fórmulas:
Función REEMPLAZAR
=REPLACE(REPLACE(B3,4,0,"-"),8,0,"-")
Función TEXTO
=TEXT(B3,"???-???-??? ")
Pulsa Enter para obtener el primer resultado, luego arrastra el controlador de autorrelleno sobre las demás celdas.
Atención: Puedes cambiar los argumentos de las fórmulas anteriores según lo necesites. Por ejemplo, para agregar "-" después del segundo, cuarto y sexto dígito, utiliza las siguientes fórmulas: =REPLACE(REPLACE(REPLACE(B3,3,0,"-"),6,0,"-"),9,0,"-") =TEXT(B3,"??-??-??-??? ") |
10.2 Agregar guiones a los números con Establecer formato de celda
Para agregar guiones directamente a los números en las celdas originales, puedes usar la función Establecer formato de celda.
1. Selecciona los números a los que deseas agregar guiones, luego pulsa Ctrl +1 para abrir el cuadro de diálogo Establecer formato de celda.
2. En el cuadro Establecer formato de celda, bajo la pestaña Número, elige Personalizado en la sección Categoría.
3. Luego, en la parte derecha Tipo sección, escribe ###-###-### en el cuadro de texto, haz clic en OK.
Ahora los números seleccionados tienen guiones agregados.
10.3 Agregar guiones a números de teléfono con Agregar texto de Kutools para Excel
Si tienes Kutools para Excel instalado, la función Agregar texto también puede ayudarte.
1. Selecciona las celdas que contienen los números a los que deseas agregar guiones, haz clic en Kutools > Texto > Agregar texto.
2. En el Agregar texto diálogo, escribe el guion u otro separador en Texto cuadro de texto, elige Personalizado opción, luego escribe las posiciones donde deseas agregar guiones separadas por comas en el cuadro de texto inferior.
3. Haz clic en Ok o Aplicar. Entonces los números seleccionados tendrán guiones agregados.
Descarga gratis Agregar texto para una prueba de30 días.
Supón que tienes una lista de números de diferentes longitudes y quieres agregar ceros a la izquierda para que todos tengan la misma longitud y se vean ordenados, como se muestra en la siguiente captura. Aquí tienes dos métodos para hacerlo.
11.1 Agregar ceros a la izquierda en las celdas con Establecer formato de celda
Puedes usar la función Establecer formato de celda para definir un formato personalizado y fijar la longitud de la celda agregando ceros a la izquierda.
1. Selecciona las celdas a las que deseas agregar ceros a la izquierda, luego pulsa Ctrl +1 para abrir el cuadro de diálogo Establecer formato de celda.
2. En el cuadro Establecer formato de celda, bajo la pestaña Número, elige Personalizado en la sección Categoría.
3. Luego, en la parte derecha Tipo sección, escribe 0000 en el cuadro de texto (para fijar la longitud a4 dígitos, escribe0000; puedes cambiarlo a otra longitud, por ejemplo, para5 dígitos, escribe00000), haz clic en OK.
Entonces los números tendrán ceros a la izquierda y la misma longitud.
Atención: si la longitud de los datos originales supera la longitud establecida, se mostrará el dato original sin ceros a la izquierda. |
11.2 Agregar ceros a la izquierda en las celdas mediante fórmula
Si no quieres cambiar los datos originales, puedes usar una fórmula para agregar ceros a la izquierda en otras ubicaciones.
Aquí tienes tres funciones que pueden ayudarte.
Fórmula1: Función TEXTO
TEXTO(número,"00…")
Fórmula2: Función DERECHA
DERECHA("00…"&número,longitud)
Fórmula3: Función BASE
BASE(número,10,longitud)
El número de ceros en la fórmula es igual a la longitud del número.
Aquí estableces4 dígitos como longitud de los números, utiliza las siguientes fórmulas:
=TEXT(B10,"0000")
=RIGHT("0000"&B10,4)
=BASE(B10,10,4)
Pulsa Enter y arrastra el controlador de autorrelleno hacia abajo.
Atención: si la longitud de los datos originales supera la longitud establecida, se mostrará el dato original sin ceros a la izquierda. |
Si deseas agregar ceros a la derecha a los números para que tengan una longitud fija, por ejemplo, agregar ceros a la derecha a los números en las celdas B3:B7 para que tengan5 dígitos como se muestra en la siguiente captura, puedes aplicar una fórmula para hacerlo.
Función REPETIR
número&REPETIR("0",longitud-LARGO(número))
En la fórmula, el argumento "número" representa el número o la referencia de celda al que deseas agregar ceros a la derecha, y el argumento "longitud" es la longitud fija que deseas.
Utiliza la siguiente fórmula:
=B3&REPT("0",5-LEN(B3))
Pulsa Enter y arrastra el controlador de autorrelleno hacia abajo en las celdas que necesiten esta fórmula.
Si deseas exportar o copiar datos de una hoja de cálculo a un bloc de notas, los textos pueden quedar desordenados si los valores de las celdas tienen diferentes longitudes. Para que se vean ordenados, como en la siguiente captura, necesitas agregar espacio al final.
Para resolver esta tarea, la función REPETIR puede ayudarte.
IZQUIERDA(texto & REPETIR(" ",longitud_máxima),longitud_máxima)
En la fórmula, el argumento "texto" es el texto o la referencia de celda al que deseas agregar espacio al final, y el argumento "longitud_máxima" es la longitud fija que deseas para los textos, que debe ser igual o mayor que la longitud máxima de los textos usados.
Para agregar espacio al final de los textos en las celdas B3:C6, utiliza la siguiente fórmula:
=LEFT(B3 & REPT(" ",10),10)
Pulsa Enter, luego arrastra el controlador de autorrelleno sobre todas las celdas que necesiten esta fórmula.
En este caso, como el texto más largo tiene9 caracteres, usamos10 aquí.
A veces necesitas agregar comillas o corchetes alrededor del texto o los números en las celdas, como se muestra en la siguiente captura. Además de escribirlo manualmente uno a uno, aquí tienes dos métodos en Excel para hacerlo rápidamente.
14.1 Agregar comillas/corchetes alrededor mediante Establecer formato de celda
Si deseas agregar comillas alrededor del texto en los datos originales, la función Establecer formato de celda en Excel puede ayudarte.
1. Selecciona las celdas a las que deseas agregar comillas, pulsa Ctrl +1 para abrir el cuadro de diálogo Establecer formato de celda.
2. En el Establecer formato de celda diálogo, bajo Número pestaña, elige Personalizado de la lista de Categoría, luego ve a la sección derecha para escribir "''"@"''" en el Tipo cuadro de texto. Haz clic en OK.
El texto en las celdas seleccionadas tendrá comillas agregadas alrededor.
Si deseas agregar corchetes alrededor del texto, en el cuadro Tipo del diálogo Establecer formato de celda, usa (@).
14.2 Agregar comillas/corchetes alrededor mediante fórmulas
También puedes usar fórmulas para agregar comillas al texto en otras celdas.
Usando el conector &
""""&texto&""""
O bien
char(34)&texto&char(34)
En este caso, para el texto en la celda B11, utiliza las siguientes fórmulas:
=""""&B11&""""
O bien
=char(34)&B11&char(34)
Pulsa Enter y arrastra el controlador de autorrelleno hacia abajo para rellenar las celdas.
Si deseas agregar corchetes alrededor del texto, utiliza la fórmula "("&texto&")".
14.3 Agregar comillas/corchetes alrededor mediante VBA
Si necesitas un código VBA para resolver esta tarea, aquí tienes uno.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Luego, en la ventana emergente, haz clic en Insertar > Módulo para insertar un nuevo módulo en blanco.
3. Copia y pega el siguiente código VBA en el nuevo módulo.
VBA: Agregar comillas alrededor de los textos
Sub addquotationmarksorbrackets()
'UpdatebyExtendOffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = """" & Rng.Value & """"
Next
End Sub
Atención: en el script del código, """" & Rng.Value & """" indica agregar "" alrededor de los textos; si deseas agregar corchetes () alrededor del texto, cámbialo por "(" & Rng.Value & ")". |
4. Pulsa F5 o haz clic en Ejecutar botón en la ventana para activar el código VBA. Aparecerá un cuadro de diálogo para seleccionar las celdas donde agregar comillas.
5. Haz clic en OK. Ahora las comillas se han agregado alrededor de los textos en las celdas seleccionadas.
A veces, para ayudar a otros usuarios a comprender mejor los datos, puedes necesitar agregar texto en los resultados de las fórmulas, como se muestra en la siguiente captura. Para incluir texto en una fórmula, utiliza comillas alrededor del texto y el conector & para combinar el texto y la fórmula.
Caso1: agregar texto antes de la fórmula
"Hoy es "&TEXTO(HOY(),"dddd, mmmm dd.")
Caso2: agregar texto después de la fórmula
TEXTO(AHORA(),"HH:MM:SS")&" es la hora actual."
Caso3: agregar textos a ambos lados de la fórmula
"Hoy se vendieron "&datos&" kg."
Más tutoriales de Excel: |
Combinar varios libros/hojas de cálculo en uno solo Dividir celdas de texto, número y fecha (separar en varias columnas) Combinar el contenido de varias celdas sin perder datos en Excel Comparar dos columnas para encontrar coincidencias y diferencias en Excel |
Las Mejores Herramientas de Productividad para Office
Kutools para Excel resuelve la mayoría de tus problemas y aumenta tu productividad en un 80%
- Barra de Fórmulas Super (editar fácilmente múltiples líneas de texto y fórmulas); Diseño de Lectura (leer y editar fácilmente grandes cantidades de celdas); Pegar en Rango Filtrado...
- Combinar Celdas/Filas/Columnas manteniendo los datos; Dividir contenido de celdas; Combinar filas duplicadas y Sumar/Promediar... Prevenir celdas duplicadas; Comparar rangos...
- Seleccionar filas duplicadas o únicas; Seleccionar filas en blanco (todas las celdas están vacías); Búsqueda Avanzada y Búsqueda Difusa en muchos libros de trabajo; Selección Aleatoria...
- Copia Exacta de múltiples celdas sin cambiar la referencia de la fórmula; Crear automáticamente referencias a múltiples hojas; Insertar viñetas, casillas de verificación y más...
- Favoritos e inserción rápida de fórmulas, rangos, gráficos e imágenes; Encriptar celdas con contraseña; Crear lista de correo y enviar correos electrónicos...
- Extraer texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir estadísticas de página; Convertir entre el contenido de las celdas y los comentarios...
- Super Filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes/semana/día, frecuencia y más; Filtro especial por negrita, cursiva...
- Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión masiva de xls, xlsx y PDF...
- Agrupación de Tabla Dinámica por número de semana, día de la semana y más... Mostrar celdas desbloqueadas, bloqueadas por diferentes colores; Resaltar celdas que tienen fórmula/nombre...

- Habilitar edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abrir y crear varios documentos en nuevas pestañas de la misma ventana, en lugar de en ventanas nuevas.
- ¡Aumenta tu productividad en un 50%, y reduce cientos de clics del ratón cada día!
