2017-12-20 9 views
1

datainputという名前以外のワークシートからすべてのデータを削除したいとします。 ワークシートのテンプレートがあるので、データは32行目(A32)から始まりますが、ワークシートごとに異なる数のレコードがあります。複数のワークシートでのダイナミックレンジの内容のクリア

私はマクロにはかなり新しく、以下は私の悲惨な試みです。

おかげで、

Sub test() 

Dim ws As Integer 

ws = Application.Sheets.Count 

For x = 1 To ws 
     If Worksheets(x).Name <> "Datainput" 
Then Worksheets(x).Rows((32),Cells(Rows.Count,Columns.Count)).ClearContents 
End 
Next 
End Sub 

答えて

0

はこのを試してみてください....

Sub test() 

Dim ws As Worksheet 
Dim lr As Long, lc As Long 

For Each ws In ThisWorkbook.Sheets 
    If ws.Name <> "Datainput" Then 
     lr = ws.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 
     lc = ws.Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column 
     If lr > 31 Then ws.Range("A32", ws.Cells(lr, lc)).ClearContents 
    End If 
Next ws 

End Sub 
関連する問題