ขอสอบถามเพิ่มเติมครับ ในการค้นหา เช่น ค้นหาคำว่า บึ่งกุ่ม ก็จะมีข้อมูลมาแสดงแค่ในแถวที่ A1 มีข้อมูลอยู่ ส่วนแถวที่ A1 ไม่มีข้อมูลก็จะไม่ถูกดึงมาแสดง จึงทำให้ค้นหาข้อมูลได้ไม่ครบ แบบนี้ควรแก้ยังไงครับ
ภาพนี้เป็นหน้าแสดงข้อมูลจากการค้นคำว่า บึงกุ่ม
ภาพนี้เป็นข้อมูลจริงที่อยู่ใน Sheet เมื่อเทียบกันดูแล้วจะเห็นว่าข้อมูลมาไม่ครบครับ
Code: Select all
Sub searchMultiplesheets()
Dim r As Range, t As Range
Dim ws As Worksheet, i As Integer, s As String
Application.EnableEvents = False
With Sheets(1)
.Range("a5").Resize(10000, 12).UnMerge
If .Range("a5").Value <> "" Then
.Range("a5", .Range("a" & .Rows.Count).End(xlUp)).Resize(, 12).ClearContents
End If
s = .Range("c2").Value
.Range("a5").Resize(.UsedRange.Rows.Count, _
.UsedRange.Columns.Count).ClearContents
End With
For Each ws In Worksheets
If ws.Name <> Sheets(1).Name Then
With ws
If .Range("l3").Value <> "" Then
For Each r In .Range("a3", .Range("a" & .Rows.Count).End(xlUp))
If r.Value & r.Offset(0, 1).Value & r.Offset(0, 2).Value & _
r.Offset(0, 3).Value & r.Offset(0, 4).Value & r.Offset(0, 5).Value _
& r.Offset(0, 6).Value & r.Offset(0, 7).Value & r.Offset(0, 8).Value _
& r.Offset(0, 9).Value & r.Offset(0, 10).Value & r.Offset(0, 11).Value _
& r.Offset(0, 12).Value Like "*" & s & "*" Then
With Sheets(1)
Set t = .Range("a" & .Rows.Count).End(xlUp).Offset(1, 0).Resize(1, 12)
r.Resize(1, 12).Copy t
End With
Application.CutCopyMode = False
End If
Next r
End If
End With
End If
Next ws
Application.EnableEvents = True
End Sub
[attachment=0]คัดโฉนด2022 อัพเดท.xlsm[/attachment]
You do not have the required permissions to view the files attached to this post.