如何根据长度编写一个查找单元格的宏?

时间:2017-06-08 19:55:04

标签: excel vba excel-vba

我是excel的新手,并试图找到一种方法来搜索列以查找4个字符的ID。对电子表格进行排序,以便所有信息都属于相应的ID,并提取ID,我需要在列中找到包含4个字母数字字符的单元格。

我一直在尝试使用.Find,但是没有什么:=要搜索,因为字符都是不同的但只有长度是相同的。此外,我不相信我可以运行do until循环,因为我需要多次调用宏来检索将出现在列中的所有ID,而我认为直到循环将只是继续回馈前4个字符ID,虽然我可能不正确。

提前谢谢!

1 个答案:

答案 0 :(得分:0)

以下内容对您有所帮助。假设您有一个连续的单元格区域,其中一些包含4个字符的代码,您可以这样做

Sub test()
Dim r As Range
Set r = Range("A1:A6")

For Each c In r.Cells
  If Len(c) = 4 Then
    Debug.Print "cell ", c.Address(), " had four characters: ", c.Value()
  End If
Next c
End Sub

当我在电子表格中运行此操作时,其中A列中的前6个单元格

This
is
a
list
of
words

调试窗口中的输出是

cell $A$1 had four characters: this
cell $A$4 had four characters: list

这只是为了灵感,因为你的问题确实没有得到很好的描述。你能从这里拿走吗?