2012-04-17 4 views
2

저는이 문제에 대한 해결책을 일주일 이상 찾고 있습니다. 형식이 지정된 텍스트 (색상 및 스타일)가있는 시트가 첫 번째 열 아래의 값이 미정의 거리에 있습니다. 사이에 약간의 공백이 있지만 IsEmpty를 사용하여 올바르게 상황을 처리했다고 생각합니다. 각 셀의 모든 값을 모두 두 번째 열의 맨 위에있는 한 셀로 복사하려고합니다. 필자는 각 셀의 텍스트를 줄 바꿈이 지정된 연결된 셀에 복사 할 수 있었지만 서식을 유지하는 데는 실패했습니다. 누구든지이 텍스트와 함께 서식을 복사하는 방법에 대해 도움을 줄 수 있다면 큰 도움이 될 것입니다. 고맙습니다!VBA Excel의 줄 바꿈

'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 
+1

이 스레드를 참조하십시오. http://www.mrexcel.com/forum/showpost.php?p=3034158&postcount=5 Andrew Poulsom은 이미 원하는 것을 수행하는 코드를 제공합니다. –

+2

참고 :이 코드에는 버그가 있습니다. 연결하려는 첫 번째 값에 선행 공백이 있으면 연결 루프 다음에 'Trim()'을 호출하면 뒤에 오는 모든 형식화 단계가 선행 공백 수만큼 나옵니다 트림 오프 ... –

+0

링크를 가져 주셔서 감사합니다. 이것은 내가 찾고있는 것 이상을 달성합니다. –

답변

0

당신은 사용하기 쉽고 셀 서식 문제를 해결 Range.Copy 및 Range.PasteSpecial 속성을 사용할 수있다.

+0

예.이 방법은 복사 및 붙여 넣기의 문제를 해결할 수 있습니다. 그러나이 방법을 사용하면 범위를 하나의 셀로 연결할 수 없습니다. –