VBA Excel换行单元格

VBA Excel换行单元格,vba,excel,Vba,Excel,一个多星期以来,我一直在寻找解决这个问题的办法。我有一张表格,上面有格式化的文本(颜色和样式),第一列下的值距离不确定。中间有一些空格,但我相信我使用IsEmpty正确地处理了这种情况。我想将这些值从每个单元格全部复制到第二列顶部的一个单元格中。我已经成功地将这些单元格中的文本复制到带有换行符的指定连接单元格中,但是我没有成功地保留格式。任何人都可以提供任何帮助,就如何复制与此文本格式将不胜感激。谢谢大家! 'set variable to find the last row of the sh

一个多星期以来,我一直在寻找解决这个问题的办法。我有一张表格,上面有格式化的文本(颜色和样式),第一列下的值距离不确定。中间有一些空格,但我相信我使用IsEmpty正确地处理了这种情况。我想将这些值从每个单元格全部复制到第二列顶部的一个单元格中。我已经成功地将这些单元格中的文本复制到带有换行符的指定连接单元格中,但是我没有成功地保留格式。任何人都可以提供任何帮助,就如何复制与此文本格式将不胜感激。谢谢大家!

'set variable to find the last row of the sheet
Dim LastRow As Integer
'find the last row of the active sheet
LastRow = ActiveSheet.UsedRange.Rows.Count
'loop through each of the rows
For C = 1 To LastRow
    'determine if a cell has a value in it - if so complete below commands
    If (IsEmpty(Cells(C, 1).Value) = False) Then
    'leave the contents of the first cell in the second column, insert a linebreak and copy the values from the current cell in the first column
    Cells(1, 2).Value = Cells(1, 2).Value & Chr(10) & Cells(C, 1).Value
    End If
Next C

您可以使用Range.Copy和Range.paste特殊属性,这些属性易于使用,并解决了设置单元格格式的问题

您可以使用Range.Copy和Range.paste特殊属性,这些属性易于使用,并解决了设置单元格格式的问题

请看这个线程,Andrew Poulsom已经给出了一个可以满足您需要的代码。请注意,尽管该代码中有一个bug:如果要连接的第一个值有任何前导空格,那么对
Trim()的调用
在连接循环结束后,将按前导空格的数量关闭以下所有格式化步骤…感谢链接,这就完成了我所寻找的,更多请看这个线程Andrew Poulsom已经给出了一个代码,可以满足您的需要。请注意,尽管代码中有一个bug:如果要连接的第一个值有任何前导空格,那么对
Trim()的调用
在连接循环结束后,将通过删除前导空格的数量取消以下所有格式化步骤…感谢链接,这完成了我所寻找的内容,而且这将解决复制和粘贴格式化的问题,但是,这将不允许我将范围连接到一个单元格中。是的,这将解决复制和粘贴格式的问题,但是这将不允许我将范围连接到一个单元格中。