0

以下のコードは、新しい列 (A) を作成し、それにヘッダー "Class" を付けてから、ブック内のすべてのワークシートの B の最後の行まで、列 A にワークシート名を入力します。後続のすべてのシートで処理された最初のシートから B の最後の行まですべてのワークシートを埋めることを除いて、機能しています。私は何を間違えましたか?各シートの B の最後の行によって塗りつぶしが決定されるのが好きです。

Option Explicit

Sub AddColumnFill()

Dim sht As Worksheet

For Each sht In ActiveWorkbook.Worksheets

    sht.Range("A1").EntireColumn.Insert xlShiftToRight
    sht.Cells(1, 1) = "Class"
    sht.Range("A2:A" & Cells(Rows.Count, "B").End(xlUp).Row).Value = sht.Name

Next sht

End Sub
4

2 に答える 2