Xin giúp đỡ: tìm kiếm trên nhiều file Excel

Liên hệ QC

dienthoaitot

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
2/7/08
Bài viết
17
Được thích
1
Chào các bác,

E có một vấn đề nhỏ muốn xin ý kiến giúp đỡ của các bác. Vấn đề của e như sau:

E tạo một folder, trong folder này e để 5 file excel (bản 2003 ). Mỗi file excel có 3 sheet.
Trên các sheet của mỗi file excel e có ghi thông tin của rất nhiều tên website khác nhau (chỉ ghi domain kiểu như giaiphapexcel.com )
Giờ e muốn tìm kiếm tên một website trên tất cả các sheet của các file excel , vậy có cách nào làm được như thế không ạ?
Ví dụ như trong một file excel, e có thể ấn Ctrl + F sau đó chọn option: within "worksheet" là sẽ tìm kiếm trong tất cả các sheet của file excel đó, nhưng giờ e muốn tìm kiếm trong tất cả file excel có trong folder đó.

Mong các bác thỉnh giáo !

E xin cảm ơn !
 
Chào các bác,

E có một vấn đề nhỏ muốn xin ý kiến giúp đỡ của các bác. Vấn đề của e như sau:

E tạo một folder, trong folder này e để 5 file excel (bản 2003 ). Mỗi file excel có 3 sheet.
Trên các sheet của mỗi file excel e có ghi thông tin của rất nhiều tên website khác nhau (chỉ ghi domain kiểu như giaiphapexcel.com )
Giờ e muốn tìm kiếm tên một website trên tất cả các sheet của các file excel , vậy có cách nào làm được như thế không ạ?
Ví dụ như trong một file excel, e có thể ấn Ctrl + F sau đó chọn option: within "worksheet" là sẽ tìm kiếm trong tất cả các sheet của file excel đó, nhưng giờ e muốn tìm kiếm trong tất cả file excel có trong folder đó.

Mong các bác thỉnh giáo !

E xin cảm ơn !
Trên GPE cũng có mấy bài thuộc dạng này ---> Vấn đề là tìm xong thì làm gì tiếp?
Nếu có thể bạn nên đưa file lên đây nhé! (nói rõ hơn yêu cầu)
 
e cũng đã tìm khá nhiều bài viết trước khi post câu hỏi rùi, nhưng chưa thấy bài phù hợp (có thể e chưa tìm kỹ)

ví dụ e search domain : abc.com

nếu có ra kết quả abc.com ở sheet 2 của file 1 thì e biết đã tồn tại abc.com trong database, còn nếu không ra kết quả thì e sẽ điền tiếp vào

tức là chỉ cần tìm domain và để biết đã tồn tại domain đó trong database hay chưa

đơn giản chỉ thế thôi ạ

e cảm ơn !
 
e cũng đã tìm khá nhiều bài viết trước khi post câu hỏi rùi, nhưng chưa thấy bài phù hợp (có thể e chưa tìm kỹ)

ví dụ e search domain : abc.com

nếu có ra kết quả abc.com ở sheet 2 của file 1 thì e biết đã tồn tại abc.com trong database, còn nếu không ra kết quả thì e sẽ điền tiếp vào

tức là chỉ cần tìm domain và để biết đã tồn tại domain đó trong database hay chưa

đơn giản chỉ thế thôi ạ

e cảm ơn !
Nếu chỉ có thế thì cần gì code ---> Nghiên cứu công cụ File Search trong menu File đi ---> Đáp ứng tốt nhu cầu của bạn đấy!
 
hic, e đã nghiên cứu rùi, e tìm tài liệu nhưng không thấy
nói bác bỏ quá nhé, e không bít nhiều về excel, nên mới posst bài cầu cứu :D
 
hic, e đã nghiên cứu rùi, e tìm tài liệu nhưng không thấy
nói bác bỏ quá nhé, e không bít nhiều về excel, nên mới posst bài cầu cứu :D
Đây này đồng chí à!
PHP:
Sub SeachFiles1()
  Dim i As Long, MyDir As String, FindString As String
  On Error Resume Next
  With Application.FileDialog(4)
    .AllowMultiSelect = False: .Show
    MyDir = .SelectedItems(1)
    If MyDir = "" Then Exit Sub
  End With
  FindString = InputBox("Go tu khoa can tim vao day")
  If FindString = "" Then Exit Sub
  With Application.FileSearch
    .NewSearch
    .SearchSubFolders = True     '<--- Tim ca trong thu muc con
    .LookIn = MyDir              '<--- Tim trong thu muc này
    .Filename = "*.xls"          '<--- Kieu file can tìm
    .TextOrProperty = FindString
    If .Execute() > 0 Then
      Range("A1").CurrentRegion.Offset(1).ClearContents
      For i = 1 To .FoundFiles.Count
        [A65536].End(xlUp).Offset(1) = .FoundFiles(i)
      Next i
    End If
    MsgBox .FoundFiles.Count & " files found."
  End With
End Sub
Code này chẳng qua tự động quá trình thôi (vì thực chất có thể tìm kiếm bằng tay)
Nói thêm: Application.FileSearch chỉ chạy được trên Excel 2003 thôi nha! Excel 2007 nó cóc chạy đâu!
Cũng nói thêm: Việc xác định sự tồn tại của 1 chuổi nào đó trong nhiều file, ta dùng FileSearch quả nhiên vô cùng tuyệt vời ---> Ấy vậy mà thằng Excel 2007 nó lại bỏ mất công cụ này ---> Giả sử muốn viết code tương tự cũng chẳng biết phải làm thế nào (tìm mà không cần mở file nha)
 

File đính kèm

trước tiên e xin cảm ơn bác đã giúp đỡ e nhiệt tình.

e đã dowload file bác gủi kèm, nhưng khi e mở file đó ra, hiện thị thông báo như này:


http://i50.***********/dc8yth.jpg

Mong bác chỉ giáo giúp e

e cảm ơn !
 
Bạn vào Tools/Macro/Security bạn chọn Medium hoặc Low. Nếu chọn Medium thì khi mở file bạn chọn tiếp Enable Macro nhé!
 
Trước khi mở file. Bạn vào Tools\Macro\Security chọn chế độ medium.
Mở file ra, có hộp thoại hỏi bạn có cho phép sử dụng Macro hay không. Bạn chọn Enable là ok.
 
trước tiên e xin cảm ơn bác đã giúp đỡ e nhiệt tình.

e đã dowload file bác gủi kèm, nhưng khi e mở file đó ra, hiện thị thông báo như này:
Mong bác chỉ giáo giúp e
e cảm ơn !
Ở trên đã nói bạn làm bằng tay rồi mà không chịu nghe!
1> Vào menu File, chọn mục File Search
2> Gõ text cần tìm vào khung Search text

attachment.php


3> Bấm mũi tên xổ xuống ở khung Search in và đánh dấu thư mục cần tìm

attachment.php



4> Bấm mũi tên xổ xuống trong khung Results should be và chọn kiểu file


attachment.php


5> Bấm nút Go và chở xem kết quả

Code trên viết cũng là dựa trên cách làm bằng tay này thôi!
 

File đính kèm

  • untitled1.JPG
    untitled1.JPG
    36.6 KB · Đọc: 353
  • untitled2.JPG
    untitled2.JPG
    36.6 KB · Đọc: 306
  • untitled3.JPG
    untitled3.JPG
    43.4 KB · Đọc: 305
Một lần nữa e xin cảm ơn bác ndu96081631 rất nhiều.

E đã làm theo hướng dẫn của bác ngay bài post thứ 2 của bác, tức là vào mục search của file nhưng đợi rất lâu mới ra kết quả, có lúc còn không ra kết quả

Sau khi các bác hướng dẫn e cách enable macros và e vào file SearchString_01 của bác gửi lúc đầu thì đã ok. E xin cảm ơn các bác nhiều lắm

Excel thật là tuyệt vời !
 
Một lần nữa e xin cảm ơn bác ndu96081631 rất nhiều.

E đã làm theo hướng dẫn của bác ngay bài post thứ 2 của bác, tức là vào mục search của file nhưng đợi rất lâu mới ra kết quả, có lúc còn không ra kết quả

Sau khi các bác hướng dẫn e cách enable macros và e vào file SearchString_01 của bác gửi lúc đầu thì đã ok. E xin cảm ơn các bác nhiều lắm

Excel thật là tuyệt vời !
Vấn đề LÂU hay MAU là tùy thuộc vào việc bạn giới hạn khu vực tìm kiếm và kiểu file ---> Giới hạn càng nhỏ, thời gian tìm càng nhanh thôi
Ví dụ: Tìm cái gì đó mà bạn cho tìm toàn bộ ổ đĩa, trên toàn bộ kiểu file thì LÂU là điều đương nhiên thôi
Theo tôi sẽ không có sự khác biệt nào về tốc độ giữa 2 phương pháp bằng tay và VBA cả (vì nó cùng 1 thuật toán)
 
chào các anh/chị,
sau một lúc tìm trên diễn đàn, em cũng tìm được đến topic này về việc tra cứu trên nhiều file excel khác nhau trong cùng 1 folder
sau khi em download về chạy thử thì thấy một lỗi đấy là phần đánh tiếng Việt bị lỗi front, nên khi tìm giữ liệu có liên quan đến tiếng Việt là không tìm được đúng kết quả

vậy kính mong anh/chị trên GPE fix lại file mẫu được không ạ?
em cảm ơn
 
ah thôi ạ, hì hì
em đã tìm được cách theo bài viết của Thầy ndu96081631 rồi ạ

em cảm ờn GPE nhiều, em cảm ơn Thầy ndu96081631

Ở trên đã nói bạn làm bằng tay rồi mà không chịu nghe!
1> Vào menu File, chọn mục File Search
2> Gõ text cần tìm vào khung Search text

attachment.php


3> Bấm mũi tên xổ xuống ở khung Search in và đánh dấu thư mục cần tìm

attachment.php



4> Bấm mũi tên xổ xuống trong khung Results should be và chọn kiểu file


attachment.php


5> Bấm nút Go và chở xem kết quả

Code trên viết cũng là dựa trên cách làm bằng tay này thôi!
 
Web KT

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

Back
Top Bottom