我想删除工作表中的所有数据,除了一个名为datainput的数据。 我有一个工作表模板,所以我的数据从第32行(A32)开始,但每个工作表都有不同的记录数。
我对macros很陌生,下面是我悲惨的尝试。
谢谢,
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 :(得分: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