Cho em xin phần mềm Advanced.Find.and.Replace for excel. (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

sonkuteo

Thành viên mới
Tham gia
12/1/13
Bài viết
3
Được thích
0
Em đang có công việc cần tìm kiếm dữ liệu trên tất cả các sheet của excel.
Vi dụ như 1 file excel có 56 sheet mà em muốn tìm 1 cái tên mà không biết ở sheet nào. anh chị nào có phần mềm trên thì cho em xin, hay là có cách nào khác mà vẫn giải quyết đc vấn đề của em hay không? Em cảm ơn!
 
Em đang có công việc cần tìm kiếm dữ liệu trên tất cả các sheet của excel.
Vi dụ như 1 file excel có 56 sheet mà em muốn tìm 1 cái tên mà không biết ở sheet nào. anh chị nào có phần mềm trên thì cho em xin, hay là có cách nào khác mà vẫn giải quyết đc vấn đề của em hay không? Em cảm ơn!

Trong khi đợi các cao thủ ra tay, bạn thử đoại code này xemSub Find_First()
Dim FindString As String
Dim Rng As Range
Dim sH As Worksheet
FindString = InputBox("Go Tu Can Tim")

If Trim(FindString) <> "" Then
For Each sH In Worksheets
With ActiveSheet.Range("A:IV")
Set Rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
MsgBox " Tim Thay O Sheet " & ActiveSheet.Name
Exit For
Else
MsgBox "Nothing found"
Exit For
End If

End With
Next
End If
 
Em đang có công việc cần tìm kiếm dữ liệu trên tất cả các sheet của excel.
Vi dụ như 1 file excel có 56 sheet mà em muốn tìm 1 cái tên mà không biết ở sheet nào. anh chị nào có phần mềm trên thì cho em xin, hay là có cách nào khác mà vẫn giải quyết đc vấn đề của em hay không? Em cảm ơn!
Sử dụng chức năng tìm kiếm sẵn có của Excel cũng được, đâu cần phần mềm gì đâu bạn.
Bạn cứ gõ Ctrl+F, nhập tên cần tìm vào Find what, sau đó bạn nhấn nút Options >> và chọn Within là Workbook, vậy là được.
 
Trong khi đợi các cao thủ ra tay, bạn thử đoại code này xemSub Find_First()
Dim FindString As String
Dim Rng As Range
Dim sH As Worksheet
FindString = InputBox("Go Tu Can Tim")

If Trim(FindString) <> "" Then
For Each sH In Worksheets
With ActiveSheet.Range("A:IV")
Set Rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
MsgBox " Tim Thay O Sheet " & ActiveSheet.Name
Exit For
Else
MsgBox "Nothing found"
Exit For
End If

End With
Next
End If
mình chạy code mà nó báo lỗiUntitled.jpg
 
hình nhỏ quá mình nhìnn không rỏ, nhưng hình như bạn chép thiếu dòng cuối cùng

"End sub"

nhưng sao bạn ko làm theo cách của bạn Xuan.Nguyen82
sử dụng cái gì có sẳn trong excel vẫn hay hơn chứ

ah, xin lỗi do mình chép thiếu,
dòng cuối cùng là:

end sub
 
cảm ơn các bạn đã giúp đỡ nhưng cái phần mềm mình nói ở trên tiện lợi hơn đó.
 
cảm ơn các bạn đã giúp đỡ nhưng cái phần mềm mình nói ở trên tiện lợi hơn đó.

sorry, do đặt sai chổ exit for, nên nó đã ko duyệt qua các sheet

Sub Find_First()
Application.ScreenUpdating = False
Dim FindString As String
Dim Rng As Range
Dim sH As Worksheet
FindString = InputBox("Go Tu Can Tim")
If Trim(FindString) <> "" Then
For Each sH In Worksheets
sH.Activate
With ActiveSheet.Range("A:IV")
Set Rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
MsgBox " Tim Thay O Sheet " & ActiveSheet.Name
Exit For
ElseIf ActiveSheet.Index = ThisWorkbook.Worksheets.Count Then
MsgBox "Nothing found"
End If
End With
Next
End If
Application.ScreenUpdating = true
End Sub
 
Lần chỉnh sửa cuối:
Web KT

Bài viết mới nhất

Back
Top Bottom