Dividir una cadena de texto sin cortar las palabra

Hola, espero no ser muy pesado, necesito el código para poder dividir una cadena de texto a un número determinado de caracteres y ponerlo en dos líneas en excel y a su vez que no me lo haga en medio de una palabra ( QUE NO ME LA CORTE), esto es para imprimir el importe de una cantidad en letra en un cheque, ahora lo estoy haciendo así, pero queda un poquito chapuzas, oriéntame por favor, si es posible controlarlo con funciones standard o con una personalizada vba.
Gracias desde España.
=SI(LARGO(K2)>53;EXTRAE(K2;1;53)&REPETIR("_";1)&REPETIR("*";2);K2&REPETIR("*";K5))

1 Respuesta

Respuesta
1
Me resistí a resolverlo con macro pero no tuve más remedio
La colocarás en un módulo y para mayor comodidad te sugiero asignarle un atajo de teclado o botón.
Debes ajustar la referencia de las celdas y el largo máximo que permitirás en la primer línea (Reemplaza el 24 por tu valor)
Saludos
Elsa
Sub SeparaTexto()
' Macro grabada el 16/06/2005 por Elsamatilde
'
Dim valor
Dim conta As Integer, pos As Integer, largo As Integer
'K2 tiene eltexto completo
largo = Len(Range("K2"))
'se vuelca el resultado en K7 y K8
Range("K7").Select
pos = 1
While conta <> 1
On Error Resume Next
valor = WorksheetFunction.Search(" ", Range("K2"), pos)
If valor <= 24 And valor > pos Then
pos = valor + 1
Else
conta = 1
End If
Wend
'no encontró espacios
If pos = 1 Or valor + pos - 1 <= 24 Then
ActiveCell.Value = Range("K2").Value
Else
ActiveCell.Value = Left(Range("K2"), pos - 1)
ActiveCell.Offset(1, 0).Value = Mid(Range("K2"), pos, largo)
End If
End Sub
PD) No te pierdas mi manual '300 Macros' explicadas paso a paso en español. Descarga la demo gratis desde: http://es.geocities.com/lacibelesdepunilla/manual
Muchas gracias elsa, es justo lo que buscaba y no he sabido encontrar, con algún retoquillo lo ajustaré a mis necesidades, gracias de nuevo
Félix Sanchez.
Alicante ( España )

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas