Eliminar saltos de linea dentro de una misma celda de excel
Para Dante o cualquiera que me pueda ayudar.
Hola, saludos.
El caso es que necesito relizar una tarea que consiste en dos pasos. Convertir una tabla de excel con formato irregular( filas con distinto numero de celdas en altura) en formato regular(todas las filas ocupan sólo una celda de altura) para posteriormente concatenar el contenido de cada fila en una sola celda.
El caso es que tengo una macro para cada parte del proceso pero no consigo terminar con el formato deseado ya que al correr la primera macro me quedan lineas vacías sin contenido dentro de las celdas por lo que al concatenar me queda un formato que no es que busco.
La cuestion es que no se si deberia actuar sobre la primera macro, sobre la segunda o sobre ambas.
He aqui la macro primera
Sub macro1doors()
Dim W1 As Worksheet
Dim W2 As Worksheet
Dim i As Integer
Dim j As Long
Dim h As Integer
Dim k As Integer
Dim l As Long
Dim StrCellContent As String
Dim Cont As Long
Dim Cabeceras(0 To 10) As String
Set W1 = Application.ActiveWorkbook.Worksheets("Hoja1")
Set W2 = Application.ActiveWorkbook.Worksheets("Hoja2")
'comienza desde la celda activa(se podria modificar el inicio)
i = ActiveCell.Row
j = ActiveCell.Column
l = 0
Cont = W1.Range("A" & Rows.Count).End(xlUp).Row
'Bucle que barre filas
While Cells(i, j) <> ""
l = l + 1
h = 0
Do
h = h + 1
Loop While Cells(i + h, j) = "" And h < Cont
'Bucle que barre columnas
While Cells(i, j) <> ""
StrCellContent = ""
k = 0
For k = 0 To h - 1
StrCellContent = StrCellContent & Cells(i + k, j) & Chr(10)
Next k
W2.Cells(l, j) = Left(StrCellContent, Len(StrCellContent))
j = j + 1
Wend
i = i + h
j = 1
Wend
W2.Select
W2.Columns("A").WrapText = False
MsgBox "Terminado"
End Suby aqui la segunda
Sub Concatenar()
Dim j As Long
Dim W1 As Worksheet, W2 As Worksheet
Dim wbkTarget As Workbook
Set W1 = Selection.Parent
Set wbkTarget = W1.Parent
For idx = 1 To wbkTarget.Worksheets.Count
If wbkTarget.Worksheets(idx).Name = W1.Name Then Exit For
Next idx
If idx < wbkTarget.Worksheets.Count Then Set W2 = wbkTarget.Worksheets(idx + 1)
kk = W1.Name
gg = W2.Name
W2.Cells.ClearContents
k = 1
For i = 1 To W1.Range("A" & Rows.Count).End(xlUp).Row
con = ""
If W1.Cells(i, 1) <> "" Then
If W1.Cells(i, 1) = "STEP" Then
f = i
Else
For j = 2 To W1.Cells(f, Columns.Count).End(xlToLeft).Column
con = con & W1.Cells(f, j) & ": " & Chr(10) & W1.Cells(i, j) & Chr(10)
Next
W2.Cells(k, 1) = Left(con, Len(con))
k = k + 1
End If
End If
Next
W2.Select
W2.Columns("A").WrapText = False
MsgBox "Terminado"
End Subsi alguien cree que me podria ayudar le puedo enviar el libro de excel con el ejemplo y las macros incluidas ya que no me caben las iamgenes ilustrativas en la pregunta.