Ðề: Hỏi về tìm kiếm dữ liệu từ nhiều Sheet và hiển thị kết quả trên form
Được hết . Để suy nghĩ đã .
Ví dụ sơ xài, thử nhé
Module1
Code:
Public Sub FindText()
Dim ws As Worksheet, Found As Range
Dim myText As String, FirstAddress As String
Dim AddressStr As String, foundNum As Integer
myText = InputBox("Enter text to find")
If myText = "" Then Exit Sub
For Each ws In ThisWorkbook.Worksheets
With ws
Set Found = .UsedRange.Find(what:=myText, LookIn:=xlValues, LookAt:=xlPart, MatchCase:=False)
If Not Found Is Nothing Then
FirstAddress = Found.Address
Do
foundNum = foundNum + 1
AddressStr = AddressStr & .Name & " " & Found.Address & vbCrLf
Set Found = .UsedRange.FindNext(Found)
Loop While Not Found Is Nothing And Found.Address <> FirstAddress
End If
myNext:
End With
Next ws
If Len(AddressStr) Then
MsgBox "Found: MSKH """ & myText & """ " & foundNum & " times." & vbCr & AddressStr, vbOKOnly, """ & myText"
Else:
MsgBox "Unable to find " & myText & " in this workbook.", vbExclamation
End If
End Sub
Kết qủa:
Kết qủa: Enter số MSKH
Bây giờ add dòng code nữa dể cho tạo ra 1 trang Result , trong đó list ra hết đã tìm
hoặc là