gpt4 book ai didi

excel - 循环遍历一列并拉出特定的单元格

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

我有一个电子表格,其中一列中有一堆数据,我希望提取特定数据。我正在尝试查看“do Until 循环”是否有效。

当循环看到“directory*”作为单元格的一部分(例如 G:\Example 的目录)时,我试图让循环停止。在此之前,循环应遍历单元格,如果不是以数字开头,则将该单元格复制到另一个工作表/列。

Sub Order()

iRow = 1

Do Until Cells(iRow, 1) = "Directory*"
If Cells(iRow, 1) <> NumberatBeginning Then
Cells(iRow, 1).Copy _
Destination:=Worksheets("Sheet2").Range("A1")
End If


iRow = iRow + 1
Loop

End Sub

如有任何帮助,我们将不胜感激

最佳答案

您已经差不多了,IsNumeric 函数可以与 Mid(或 Left)函数结合使用来检查第一个单元格值中的字符,如果该字符是数字,则返回 TrueFalse。试试这个:

Sub Order()

Dim iRow as Long, x as Long

iRow = 1
x = 1

Do Until Cells(iRow, 1).Value Like "Directory*"
If Not IsNumeric(Mid(Cells(iRow, 1).Value, 1, 1)) Then
Worksheets("Sheet2").Cells(x, 1).Value = Cells(iRow, 1).Value
x = x + 1
End If
iRow = iRow + 1
Loop

End Sub

您应该避免使用复制和粘贴,因为它会减慢代码速度,最好简单地设置单元格的值。

此外,当您循环遍历并复制具有非数字第一个字符的单元格并将它们粘贴到 Sheet2 时,您的代码始终会粘贴到同一单元格中,Range("A1 "),假设您想要一个值列表,则需要在每次将值复制到 Sheet2 时添加一行来增加该列表。

关于excel - 循环遍历一列并拉出特定的单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42271313/

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