2013-03-15 3 views
0

내가 잘 작동 표준 모듈에서이 코드를 가지고 :VBA Excel 워크 시트 변경 자동 맞춤 행

다음
Public Sub AutofitRows() 
ThisWorkbook.Worksheets("Data").Cells.EntireRow.AutoFit 
End Sub 

나는 몇 가지에 대한 모든 행을 자동 맞춤하지 않는 데이터 워크 시트 모듈에서이 코드를 이유 :

Private Sub Worksheet_Change(ByVal Target As Range) 

If Target.Address = "$B$3" Then 

Call AutofitRows 

End If 

End Sub 

누군가이 문제를 해결하는 방법을 설명해주세요.

감사합니다. 코드 아래

+0

어떤 오류 메시지가 나타 납니까? 오류가 아닌 Autofit 동작의 문제인 경우 AUtofit이 제대로 적용되지 않는 데이터 행의 예를 표시하십시오. –

+0

답장을 보내 주셔서 감사합니다. 오류 메시지가 없습니다 - 행 중 하나를 자동 맞춤하지 않습니다. – user1423997

+0

확인하십시오. 시도해 볼 수 있도록 데이터를 입력하십시오. –

답변

0

보십시오.

Public Sub AutofitRows() 
    Dim rng As Range 
    Set rng = ThisWorkbook.Worksheets("Data").Rows("3:3") 
    rng.AutoFit 
End Sub 

하여 아래의 코드를 가정은 B3 셀의 값이 변경됩니다 때 또한 프로 시저가 호출됩니다 워크 시트 ("데이터")에 있습니다.

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = "$B$3" Then 
     Call AutofitRows 
    End If 
End Sub 
+0

난 너비가 동일하고 행 높이를 변경하려면 열 너비 싶습니다. – user1423997

+0

@ user1423997 코드를 업데이트했습니다. –

+0

이것은 관련성이 있습니다. 다른 셀 (다른 행에 있음)에서 자동 맞춤을하고 싶습니다. 다른 시트로의 조회입니다. – user1423997

관련 문제