Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
找到值后,VBA将升起一个标志_Vba_Excel_Find - Fatal编程技术网

找到值后,VBA将升起一个标志

找到值后,VBA将升起一个标志,vba,excel,find,Vba,Excel,Find,我正在尝试使用.Find方法在找到值后升起一个标志。问题在于。查找。它不起作用了。这应该是真的,但事实并非如此。这些值存在于Repasse.RangeA2:LastFindRange中,但它无法识别它们。有什么想法吗 Dim Book As Workbook Dim Calypso As Worksheet Dim Repasse As Worksheet Dim LastFindRange as Long Dim LastCalypso as Long Dim Flag as Boolean

我正在尝试使用.Find方法在找到值后升起一个标志。问题在于。查找。它不起作用了。这应该是真的,但事实并非如此。这些值存在于Repasse.RangeA2:LastFindRange中,但它无法识别它们。有什么想法吗

Dim Book As Workbook
Dim Calypso As Worksheet
Dim Repasse As Worksheet
Dim LastFindRange as Long
Dim LastCalypso as Long
Dim Flag as Boolean

Set Book = Workbooks("Novo Email - Caixa Offshore")
Set Calypso = Workbooks("Novo Email - Caixa Offshore").Worksheets("Calypso")
Set Repasse = Book.Worksheets("Exceções Repasse")
LastFindRange = Repasse.Cells(Rows.Count, "A").End(xlUp).Row
LastCalypso = Calypso.Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To LastCalypso
Flag = True
On Error Resume Next
Set FindSting = Repasse.Range("A2:A" & LastFindRange).Find(Calypso.Range("D" & i).Value)
If FindString Is Nothing Then
    Flag = False
Else: Flag = True
End If
我是个白痴

我使用FindString作为范围,并使用FindString-没有r


所以这完全是一个输入错误。

最后的FindRange是什么?请删除错误恢复,然后检查是否出现错误。此外,请为其他变量提供值,以便我们查看是否存在错误。请参见上面的编辑。我包含了定义了变量的部分代码。接下来,我将尝试在没有错误的情况下继续,看看会发生什么。我的印象是VBA中的代码被认为是宏。我的缺点是,更奇怪的是,当我将光标放在FindString上时,当它不工作时,它并没有说什么。它返回我要查找的值。但在调试过程中,一旦我进入if,它就会将标志设置为false。请将此标记为问题的答案,因为它可以关闭。顺便说一句,打字白痴;下面是一个巨大的技巧,它将为您节省许多调试时间…在VBE中,工具->选项->编辑器选项卡->需要变量声明。这将在每个新模块的顶部插入显式代码选项。Option Explicit是VBA程序员最好的朋友。通过强制你声明你的变量,它会处理像这样的打字错误。第一次运行例程时,它会给您一个编译错误,变量未定义,并突出显示FindSting。我还建议手动将OptionExplicit添加到所有现有模块的顶部。