|
▼ponpon さん:
こんにちは。
なるほど簡単ですね。ありがとうございます。
ところで、もうひとつ質問があります。
全社員、全月の得点部分だけを一括クリアする場合、下記のようなコードではまったくダメでしょうか?
というかオブジェクトエラーになってしまいます。
ちなみに得点データ領域は、7行目、4列目以降です。
'A列を上から順に
For Each daTa In myDR
daTagyo = daTa.Offset(0, 3).Resize(1, 10).Value
daTagyo.Delete
Next
の部分がダメらしいのですが・・・
1 2 3 4
職務 氏名 社員番号 得点・・・・・
7 J ●
8 J ●
9 J ●
・
・
・
Private Sub データクリアボタン_Click()
Dim myDR As Range
Dim daTa As Variant
Dim daTagyo As Variant
Dim ans As Integer
Dim i As Integer
Application.DisplayAlerts = False
ans = MsgBox("全社員の得点データを一括削除します。本当に削除しますか?", vbYesNo + vbExclamation, "オールクリア")
Select Case ans
Case vbYes
MsgBox "全社員の得点データを削除します。", vbInformation, "オールクリア"
'****************************************
'各月シートから得点データ領域を削除
'****************************************
For i = 1 To 12
With Worksheets(i & "月")
'抽出されたA列をmyDRに格納
Set myDR = .Range("A7", .Range("A65536").End(xlUp)).SpecialCells(xlCellTypeVisible)
'A列を上から順に
For Each daTa In myDR
daTagyo = daTa.Offset(0, 3).Resize(1, 10).Value
daTagyo.Delete
Next
End With
Next
Case vbNo
End Select
Application.DisplayAlerts = True
End Sub
|
|