0

このコードは標準モジュールにあり、正常に動作します。

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

誰かがこれを修正する方法を説明できますか?

ありがとう。

4

1 に答える 1

0

以下のコードを試してください:

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

以下のコードが Worksheets("Data") にあると仮定します。また、セル B3 の値が変更されると、プロシージャが呼び出されます。

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$3" Then
        Call AutofitRows
    End If
End Sub
于 2013-03-15T12:00:43.893 に答える