|
こんばんは。
>実際にシート”1月”に行追加する場合
With worksheets("1月")
With .Range("A65536").End(xlUp)
.Offset(1, 0).Value = Me.社員登録ComboBox1.Text
.Offset(1, 1).Value = Me.社員名TextBox1.Text
.Offset(1, 2).Value = Me.社員番号TextBox1.Text
Set myR = .Offset(1, 19)
myTop = myR.Top
myLeft = myR.Left
myWidth = myR.Width
myHeight = myR.Height
End With
Set chcB = .CheckBoxes.Add(myLeft, myTop, myWidth, myHeight)
chcB.Characters.Text = "チェック"
End With
ですね。
With節がどこまでなのかを考えないとミスります。
.Offsetは、worksheets("1月").Range("A65536").End(xlUp)の省略で、
.CheckBoxes.Add(myLeft, myTop, myWidth, myHeight)は、worksheets("1月")
の省略です。
ブックにあるすべてのシートに書き込むなら
With Worksheets("管理者入力画面")
End With
を削除して、その代わりに
Application.ScreenUpdating = False
For Each sh In ThisWorkbook.Worksheets
With sh
’処理
End With
Next
Application.ScreenUpdating = True
とすればよいでしょう。
シート名が「1月」から「12月」なら(大文字小文字に注意)
For i = 1 To 12
With WorkSheets( i & "月")
'処理
End With
Next
で処理できると思います。
|
|