2013-04-22 4 views
1

그래서 길이에 따라 텍스트를 나누는 방법을 찾고 있었지만 아무것도 찾을 수 없었습니다.VBA를 사용하여 단일 Excel 셀에서 여러 줄로 나누기

내 질문은 : vba 코드를 사용하는 Excel에서 한 줄의 텍스트를 한 줄로 여러 줄로 나눌 수 있습니까?

텍스트 자체에 대한 액세스 권한이 없으며 액세스 데이터베이스의 쿼리를 통해 삽입됩니다. 이것은 말하기를, 나는 정말로 나를 도울 줄선 캐릭터 "Chr (10)"을 사용할 수 없다.

텍스트 길이가 특정 수의 글자보다 큰지 구별 할 수있는 방법이 있다고 생각합니다. 실제로 글자 수가 2 이상 (또는 실제로 더)으로 분할 된 다음 줄 바꿈 문자를 사용하여 병합 할 수 있습니다.

제 질문/요청이 충분히 명확하기를 바랍니다.

미리 감사드립니다. 나는 VB를 불러올 경우

+0

나는 도움이 될 수 있지만 당신에게 가장 적합한 아이디어가없는 2-3 vba 기술을 발견했습니다. 데이터 범위의 인쇄 화면에 링크를 추가 할 수 있습니까? 어떻게 구성되어 있습니까? 또는 더 나은 이해를 위해 질문에 표 레이아웃을 추가하십시오. –

답변

0

, 그때는 더 쉬운 방법이 있다고 생각합니다. 열 너비를 원하는 너비로 설정하고 해당 열의 셀을 줄 바꿈으로 포맷 할 수 있습니다.

주의해야 할 쿼리 테이블에는 두 가지 설정이 있습니다. "열 너비 조정"은 기본적으로 선택되어 있지 않으므로 확인해야합니다. 그렇지 않으면 Excel이 열을 더 크게 만들 것이고 텍스트 줄 바꿈을 선택했다는 사실은 중요하지 않습니다. "셀 서식 유지"는 기본적으로 선택되어 있으므로 계속 확인해야합니다. 그러면 줄 바꿈 텍스트가 해당 열에 대해 계속 확인됩니다.

고정 폭 글꼴을 사용하지 않으면 열 너비를 설정해도 특정 문자 수를 얻을 수 있다고 보장하지 않습니다. 그러나 당신이 단지 가까이 가고 싶다면, 이것이 효과가있을 것입니다.

0

제대로 당신은 마찬가지로 @vBCrLf

를 사용해야합니다 :

가 표시 목적으로 그냥 경우
Dim range 
Dim i 
Dim split_value 
Dim splits() as Variant 

range = Range("A1") 
split_value = 15 
i = 0 

' Split them 
While(Len(range.Value) > split_value) 
    splits[i] = Mid(range.Value, 1, split_value) 
    range.Value = Mid(range.Value, split_value + 1) 
    i = i + 1 
Wend 

' Join them 
For c = LBound(splits) To UBound(splits) 
    range.Value = range.Value & vbCrLf & splits[c] 
Next c 
+0

텍스트 자체에 대한 액세스 권한이 없기 때문에 표시된 것처럼 두 부분을 문자열 형식으로 가질 수 없습니다. 텍스트가 워크 시트에 삽입되면 텍스트를 검색하여 분할 할 수 있습니까? – lbpmartel

관련 문제