我正在处理一个代码项目,在该项目中,我需要将一张表中 G 列中一个单元格的值(在本例中为“测试表”)与另一张表中 B 列中的一个单元格中的值(在本例中为信息')。在“信息”表中找到此匹配行后,我需要从该匹配行的 C 列中检索整数值。
我正在尝试在可以从程序的不同部分调用的函数中实现此代码。我尝试过以多种不同方式对变量进行尺寸标注,但是当我从主子调用函数时,我遇到了类型不匹配的问题。我非常失落和沮丧。你们中的任何人都可以看到我做错了什么吗?
主子调用:
Sub AutoSend()
Dim Temp As Integer
Dim rng As Range
Dim r As Range
Set rng = Range("A2:I6")
For Each r in rng.Rows 'EDIT to more accurately reflect my code
Temp = FindHigh(Cells(r,7).Value) 'THROWS ERROR HERE
Next r
End Sub
调用的函数 FindHigh:
Function FindHigh(Key As String) As Integer
Dim Target
Dim Success As Integer
Success = 0
Sheets("Information").Select
Set Target = Columns(2).Find(Key, LookIn:=xlValues)
If Not Target Is Nothing Then
Sheets("Information").Cells(Target.row, 3).Select
Success = Rows(Target.RowIndex).Cells(Target.RowIndex, 3).Value
End If
Sheets("Test Sheet").Select
FindHigh = Success
End Function