我在表格上有一系列值
E11:" Notional"
E13:"优惠券"
等
在我的代码中,使用工作表名称
Function AddInput(name As String, strInput As String, Optional suffix = "") As String
Dim inputVal As Variant
On Error GoTo ERROR_FUNCTION
With Worksheets(name)
If .Cells.Find(what:=strInput, LookAt:=xlWhole,searchorder:=xlByRows).Offset(0, 1).Value <> "" Then
inputVal = Trim(Cells.Find(what:=strInput, LookAt:=xlWhole, searchorder:=xlByRows).Offset(0, 1).Value)
If TypeName(inputVal) = "Date" Then inputVal = Format(inputVal, "YYYYMMDD")
AddInput = Replace(strInput, " ", "") & "=" & inputVal & "&"
If suffix <> "" Then AddInput = AddInput & suffix
Else
AddInput = ""
End If
End With
Exit Function
ERROR_FUNCTION:
Debug.Print strInput & ": input not found"
MsgBox strInput & ": input not found"
End Function
我能在Cell E12中找到什么,但不能找到E11 我做了以下事情:
1)我直接将单元格值复制到搜索功能中(没有机会指责它)。
2)我将E11中的值复制为1(如果由于某种原因它无法找到该范围等...它刚刚返回E12)。
我仍然找不到一个单元格,它适用于我通过它的每一个其他值。
有没有人遇到过这个,你是怎么解决的?
谢谢!
答案 0 :(得分:0)
确保正确开始每次搜索:
Sub dural()
Dim r As Range
strSheetname = ActiveSheet.Name
MyInputString = Application.InputBox(Prompt:="Enter value", Type:=2)
With Sheets(strSheetname)
Set r = .Cells.Find(what:=MyInputString, After:=Range("A1"))
End With
MsgBox r.Address(0, 0)
End Sub