注册 登录
编程论坛 VB.NET论坛

删除符合条件的单元格内容

刘叶全 发布于 2022-06-15 11:34, 1331 次点击
Sub   删除()
Dim  arr,i As  long, j as long
arr=range ("E2:J66")
For i=1 To UBound (arr,2)
    For j=1 To UBound(arr)
        If arr(j,i)≥"10:00" And arr (j,i)≤"23:59" Then
            arr=""
        End if
    Next
Next
Range("E2").Resize(UBound(arr),UBound (arr,2))=arr
End Sub


求哪位大佬帮忙看看是那里的问题   运行过后再这个范围之内的时间都没有被删除
2 回复
#2
boyzjv2022-06-19 12:27
你这是excel的宏代码么?
从 arr=range ("E2:J66") 看,arr应该是个数组了 数组就不能简单的 arr=""赋值了,要有具体的角标,比如arr(j,i)=""

或者用宏自带的 clear 也可以
#3
qq21202157582022-09-07 10:47
这也太...问题好多,大概是哪个PDF或者书上OCR过来的吧

Sub Macro18()
   
    数组 = Range("E2:J16")
   
    For 第几列 = 1 To UBound(数组, 2)
        For 第几行 = 1 To UBound(数组)
            
            If 数组(第几行, 第几列) >= #10:00:00 AM# And 数组(第几行, 第几列) <= #11:59:00 PM# Then
                数组(第几行, 第几列) = ""
            End If
            
        Next
    Next
   
    Range("E2").Resize(UBound(数组), UBound(数组, 2)) = 数组
   
End Sub
1