我是Visual Basic应用程序的新手,我想了解如何使用宏格式化电子表格的特定部分。
我附上了截图,我希望删除从上午12点到早上8点的数据一个月的典型数据。请让我知道如何使用Excel宏做很多事情。
答案 0 :(得分:1)
这是一个解决方案,您可以在其中提供检查此范围内的单元格的循环范围,然后在检查所有单元格后删除整行:
Sub remove_rows()
'range of dates to be checked
Dim target_range As Range
Set target_range = Range("A1:A10")
'range of cells to be removed
Dim remove_range As Range
Dim from_time As String
Dim to_time As String
from_time = "19:37:38"
to_time = "22:01:38"
'loop to get all cells
For Each cell In target_range
If TimeValue(cell) > from_time And TimeValue(cell) < to_time Then
Debug.Print TimeValue(cell)
If remove_range Is Nothing Then
Set remove_range = cell
Else
Set remove_range = Union(remove_range, cell)
End If
End If
Next cell
'just for debuging puposes (delete this line later)
remove_range.Select
'remove all rows (change it if you want to shift cells...)
remove_range.EntireRow.Delete
Set remove_range = Nothing
End Sub
我在我的A1:A10范围内创建了一系列日期(在这里使用你的)。在这里,您可以看到哪些行将被删除:
同时更改时间标准: from_time =“19:37:38”和to_time =“22:01:38”