0
我有一個表單,您可以在其中介紹產品代碼並返回其描述和價格。我想添加另一個搜索條件,以便能夠通過關鍵字查找產品,並在「說明」列中進行搜索。我不確定「find」函數是否允許執行此操作,或者是否需要使用「vlookup」函數。我在「vlookup」中發現的問題是,我希望能夠在列中繼續搜索其餘的比賽。這是我目前工作的代碼:在Excel中查找功能:按關鍵字搜索
Option Explicit
Dim Llave As Boolean
Private Sub BtnBuscar_Click()
If Not Sheet1.Range("C1:C211").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole) Is Nothing Then
If Llave Then
Cells.FindNext(After:=ActiveCell).Select
Fila.Caption = ActiveCell.Row
Dato1.Caption = ActiveCell.Value
Dato2.Caption = ActiveCell.Offset(0, 1).Value
Dato3.Caption = ActiveCell.Offset(0, 2).Value
Dato4.Caption = ActiveCell.Offset(0, 4).Value
Else
Sheet1.Range("C1:C211").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Select
Fila.Caption = Sheet1.Range("C:C").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Row
Dato1.Caption = Sheet1.Range("C:C").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Value
Dato2.Caption = Sheet1.Range("C:C").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Offset(0, 1).Value
Dato3.Caption = Sheet1.Range("C:C").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Offset(0, 2).Value
Dato4.Caption = Sheet1.Range("C:C").Find(Me.DatoBuscado, LookIn:=xlValues, LookAt:=xlWhole).Offset(0, 4).Value
Llave = True
End If
Else
Dato1.Caption = " "
Dato2.Caption = " "
Dato3.Caption = " "
Dato4.Caption = " "
Fila.Caption = " "
MsgBox "Dato Inexistente", 64, ""
End If
End Sub
Private Sub Dato1_Click()
End Sub
Private Sub Dato3_Click()
End Sub
Private Sub Fila_Click()
End Sub
Private Sub UserForm_Initialize()
Llave = False
End Sub
所以這是一個搜索表單(用戶窗體),我點擊的工作表(shee1)上的按鈕時,彈出。
非常感謝!
納塔利婭。
但我認爲查找功能需要輸入您正在尋找的確切字符串,所以我想在字符串內尋找關鍵字。這可能通過使用查找?謝謝:) – 2014-10-01 14:13:26
您可以設置查找以搜索整個或部分字符串。使用參數'LookAt:= xlPart'。 – 2014-10-01 14:15:22
非常感謝! :d – 2014-10-01 14:26:22