|
- Sub FindByName()
- Dim shResult As Worksheet, shSource As Worksheet
- Dim arr As Variant, lngRow As Long, lngCol As Long
- Dim strFind As String, strTemp As String
- Dim lngRowID As Long, lngCols As Long
- Dim blIsFind As Boolean
-
- Set shResult = Sheets("查找")
- Set shSource = Sheets("记录")
- blIsFind = False
-
- arr = shResult.Range("A2:AN2")
- For lngCol = LBound(arr, 2) To UBound(arr, 2)
- strFind = strFind & "-*" & arr(1, lngCol) & "*"
- Next
- shResult.Range("A5:AN" & Rows.Count).ClearContents
-
- lngRowID = 5
- arr = shSource.UsedRange
- lngCols = UBound(arr, 2)
- For lngRow = LBound(arr) To UBound(arr)
- strTemp = ""
- For lngCol = LBound(arr, 2) To UBound(arr, 2)
- strTemp = strTemp & "-*" & arr(lngRow, lngCol) & "*"
- Next
- If strTemp Like strFind Then
- shResult.Range("A" & lngRowID).Resize(1, lngCols) = Application.WorksheetFunction.Index(arr, lngRow, 0)
- lngRowID = lngRowID + 1
- blIsFind = True
- End If
- Next
-
- If blIsFind = False Then MsgBox "查无"
-
- End Sub
复制代码 |
|