때때로 셀의 너비와 높이를 초과하는 텍스트가 포함될 수있는 셀이있는 워크 시트가 있습니다. 눈치 채지 못하고 행 높이를 조정하면 텍스트가 잘린 것처럼 보입니다. 누구든지 VBA 스 니펫이나 이러한 셀을 찾을 수있는 도구를 가지고 있으므로 조정할 수 있습니까? 감사!내용을 표시하기에 너무 작은 텍스트 셀 찾기
답변
너비가 너무 넓은 열을 식별하는 것은 특히 셀 내의 텍스트가 다른 글꼴 및/또는 글꼴 크기를 가질 수 있기 때문에 까다로울 수 있습니다. Range.AutoFit 메서드를 사용하여 열의 크기를 자동으로 조정하는 것이 훨씬 쉽습니다. 다음
예로서, 사용자는 자동 맞춤 방법을 호출 할 수
Dim myRange As Excel.Range
Set myRange = Application.Range("A1:C3")
myRange.Columns.AutoFit
Range.AutoFit 방법도 좁은 컬럼들을 초래하지만, 조금 너무 공격적 일 수있다. 따라서 최소 열 너비를 설정하는 방법을 만들 수 있습니다 :
Sub AutoFitColumns(theRange As Excel.Range, minColumnWidth As Double)
theRange.Columns.AutoFit
Dim column As Excel.Range
For Each column In theRange.Columns
If column.ColumnWidth < minColumnWidth Then
column.ColumnWidth = minColumnWidth
End If
Next column
End Sub
위하지만 8.5의 최소 폭, 열을 자동 맞춤을 다음과 같이 호출 할 수 있습니다 :
Dim myRange As Excel.Range
Set myRange = Application.Range("A1:C3")
Call AutoFitColumns(myRange, 8.5)
범위의 행을 자동 맞춤 설정할 수도 있습니다. 이것은 자주 필요하지 않지만 다음과 같이 사용하십시오.
희망이 있습니다.
업데이트 : 크레이그의 댓글에 답글 달기 :
Thansk 마이크. 이 스프레드 시트는 웹 인터페이스 생성기에 stuckctured 입력으로 으로 사용되므로 열 너비는 이므로 변경하지 않아야합니다. 나는 실제로 그냥 텍스트가 표시되는 모든 세포에 대한 시트를 검색 무언가를 찾고 세포가 세포가 허용 할 수있는 것보다 넓기 때문에 큰 크기의 큰 크기가 필요합니다. 조정을 만들기 위해 프로세스를 찾고 있습니다. 단지 이므로 간과하기 쉽습니다. 에 대한 아이디어가 있습니까? (1) 세포가 차단되고 있는지 확인하고 (2)이 컷오프를 수정 :
글쎄, 분명 당신은 이 일을하고 싶다.
두 가지 단계로이 작업을 수행하고자하는 것으로 알고 있지만 행 높이와 열 너비가 다를뿐만 아니라 텍스트 배치가 켜져있을 수 있기 때문에 (1) 단계는 Excel의 모든 상황에서 올바르게 수행하기가 거의 불가능합니다. 또는 끄기가 가능하며 글꼴은 잠재적 스타일 및/또는 크기에 관계없이 비례 글꼴 일 수 있습니다.
요약하면 엄청난 양의 작업을하지 않고도 어떤 셀이 잘리고 있는지를 확실하게 식별 할 수있는 방법이 없습니다. 그러나 스프레드 시트를 단 하나의 글꼴 스타일로 제한하고 비례 글꼴을 사용하면 완화 할 수 있습니다. 이렇게하면 열 너비를 단순히 셀 내의 텍스트 길이와 비교할 수 있습니다.Excel.Range.ColumnWidth 속성은 열 너비의 한 단위가 표준 스타일의 한 문자 너비와 같도록 조정 된 너비를 반환하기 때문입니다. 비례 폰트의 경우, 문자 0 (제로)의 폭이 사용됩니다.
그러므로 은 단어 줄 바꾸기가 사용되지 않고 글꼴이 표준 스타일로되어 있고 이상적으로 일반 글꼴이 비례 글꼴이고 그 다음에 모든 셀을 반복 할 수 있습니다. 보유하고있는 값이 열 너비보다 긴 위치를 찾고있는 범위 :
Dim myRange As Range
Set myRange = Application.Range("A1:E5")
Dim cell As Excel.Range
For Each cell in myRange.Cells
If Len(CStr(cell.Value)) > cell.ColumnWidth Then
MsgBox "The cell at " & cell.Address & " has text that is too long!"
End if
Next cell
하지만 여기에 다음 부분이 올 것입니다. 어떻게 수정 하시겠습니까? 단어 줄 바꾸기가 사용되지 않고 글꼴이 표준 스타일로되어 있고 이상적으로 일반 글꼴이 비례 글꼴 인 경우 매우 간단합니다.
다음,
Dim myRange As Range
Set myRange = Application.Range("A1:E5")
Dim cell As Excel.Range
For Each cell in myRange.Cells
If Len(CStr(cell.Value)) > cell.ColumnWidth Then
cell.Columns.AutoFit
End if
Next cell
그러나 우리가려고하는 경우에 열을 자동 맞춤 :
이Dim myRange As Range
Set myRange = Application.Range("A1:E5")
Dim cell As Excel.Range
For Each cell in myRange.Cells
If Len(CStr(cell.Value)) > cell.ColumnWidth Then
cell.ColumnWidth = Len(CStr(cell.Value))
End if
Next cell
(2) 열을 자동 맞게 : (1) 셀의 값 길이에 맞게 열 너비를 설정 열 너비를 먼저 확인하지 않고 바로 직접 호출하는 것이 훨씬 쉽습니다. 너비가 b가 될뿐만 아니라 e는 한 번에 모든 셀에 대해 수정되지만, Range.AutoFit 메서드는 비례 폰트를 포함하여 모든 스타일을 포함한 모든 글꼴을 처리 할 수 있습니다.
따라서 자동 맞추기 방식으로 직접 이동하는 두 가지 옵션이 있습니다. 열 자동 맞춤 또는 행 자동 맞춤입니다. 정말 그냥 표시되는 텍스트 이고 어떤 세포에 대한 시트를 스캔 할 뭔가를 찾고
내가 해요 : 가장 최근의 견적을 바탕으로, 당신이 행 크기를 다시 할 같은 소리 셀이 허용하는 것보다 넓기 때문에 행 높이가 더 커야합니다.
이 경우 텍스트 줄 바꿈을 사용하고 행을 자동 완성합니다. 예 :
Dim rng As Excel.Range
Set rng = Application.Range("A1:E5")
With rng.Rows
.WrapText = True
.AutoFit
End With
이 모든 것이 사용자의 모든 옵션에 해당한다고 생각합니다. 결국 Excel에서 수행 할 수있는 작업과 정확하게 일치하지 않을 수도 있지만 은에서 필요한 작업을 수행 할 수 있어야한다고 생각하십니까? 트릭을하면 알려주세요.
- 마이크
- 1. 버퍼가 너무 작은 sprintf_s
- 2. 가장 작은 창 찾기
- 3. 표 셀 및 텍스트 필드에서 편집 내용을 미러링하는 방법
- 4. 너무 많은 텍스트
- 5. 텍스트 간격 표 셀
- 6. Excel 매크로로 셀 범위 찾기
- 7. VBA를 사용하여 Word에서 셀 내용을 삭제하는 방법?
- 8. 오픈 오피스를 사용하여 셀의 내용을 변경하지 않고 ms Excel에서 숫자 셀 유형을 텍스트 셀 유형으로 변환
- 9. JTable 셀 - 긴 텍스트 처리
- 10. UITableView에서 셀 텍스트 편집
- 11. 차이 찾기 (텍스트)
- 12. 셀 내용을 기반으로 EXCEL VBA에서 MYSQL 쿼리
- 13. white-space : nowrap은 셀 외부로 내용을 이동합니다.
- 14. /proc의 셀 Linux 관련 내용을 설명하는 문서
- 15. 동적 셀 내용을 기반으로 DataGridRow 스타일 지정?
- 16. dojo grid에서 셀 내용을 복사하는 방법
- 17. 도청되었을 때 UITableView의 셀 내용을 변경합니다.
- 18. 작은 브라우저 창에서 텍스트 상자 높이
- 19. TableView에 텍스트 필드가있는 Iphone 셀
- 20. UBLAS 행렬 셀 주변 값 찾기?
- 21. .NET에서 Excel 문서의 가장 오른쪽 셀 찾기
- 22. 문자 찾기 및 바꾸기로 새 셀 만들기
- 23. 셀 서식이있는 jquery 데이터 격자 찾기
- 24. 텍스트 데이터로드 추세 찾기
- 25. 파일에서 텍스트 찾기 (C#)
- 26. 이미지 내에서 텍스트 찾기
- 27. 텍스트 위치 찾기
- 28. 찾기 앵커 텍스트 태그
- 29. Python 집합에서 가장 작은 연속 정수 찾기
- 30. 작은 일정 문제에 대한 수학적 솔루션 찾기
Thansk Mike. 이 스프레드 시트는 웹 인터페이스 생성기에 대한 정적 입력으로 사용되므로 열 너비가 다양하므로 조정할 필요가 없습니다. 저는 실제로 텍스트가 표시된 셀이 시트를 스캔하여 무언가가 셀이 허용 할 수있는 것보다 넓어서 행 높이가 더 커야 할 필요가있는 것을 찾고 있습니다. 나는 조정하기위한 과정을 찾고 있지 않다. 간과하기 쉽기 때문에 그들을 찾는다. 그것에 대한 아이디어가 있습니까? – Craig
안녕하세요 크레이그, 당신이하고 싶은 일과 Excel이 할 수있는 일이 정확히 불행히도 일치하지 않을 수도 있습니다. 그러나 나는 * 당신이 필요한 것을 다 할 수 있어야한다고 생각합니다. 나는 "Update : Craig 's Comment에 답장"이라는 제목의 섹션에 이어 나의 답변을 업데이트했다. 희망이 도움이됩니다! –