gpt4 book ai didi

vba - 如果第一个单元格不是数字vba Excel则删除行

转载 作者:行者123 更新时间:2023-12-03 00:27:40 26 4
gpt4 key购买 nike

如果第一个单元格不是数字(文本或空白单元格),我将使用以下代码删除一行

Dim LR3 As Long, i3 As Long
With Sheets("Productos")
LR3 = Range("A" & Rows.Count).End(xlUp).Row
For i3 = LR3 To 2 Step -1
If IsNumeric(Sheets("Productos").Range("A" & i3).Value) Then
Else
Rows(i3).Delete
End If
Next i3
End With

使用 LR3 到 2 是因为第一行是标题行,我不想删除它。我没有发现代码有任何问题,甚至没有收到任何错误。你看到什么不对劲了吗?这可能是一个错误的程序?

最佳答案

我怀疑您的代码问题是 Sheets("Productos") 不是事件表。因此 Rows(i3).Delete 指的是事件工作表,它可能不是 Sheets("Productos")

请注意下面代码中 DOTS 的使用。

试试这个(经过尝试和测试)

Sub Sample()
Dim LR3 As Long, i3 As Long

With Sheets("Productos")
LR3 = .Range("A" & .Rows.Count).End(xlUp).Row

For i3 = LR3 To 2 Step -1
If Not IsNumeric(.Range("A" & i3).Value) Then .Rows(i3).Delete
Next i3
End With
End Sub

编辑:我错过了空白单元格部分,但多亏了吉米的帖子,我看到了。

修改后的代码

Sub Sample()
Dim LR3 As Long, i3 As Long

With Sheets("Productos")
LR3 = .Range("A" & .Rows.Count).End(xlUp).Row

For i3 = LR3 To 2 Step -1
If Not IsNumeric(.Range("A" & i3).Value) Or _
.Range("A" & i3).Value = "" Then .Rows(i3).Delete
Next i3
End With
End Sub

关于vba - 如果第一个单元格不是数字vba Excel则删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21886113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com