:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

ฟอรัมถาม-ตอบปัญหาการใช้งาน Macro และ VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#1

Post by 9KiTTi »

ขออนุญาตอ้างถึง

Code: Select all

https://snasui.com/viewtopic.php?f=3&t=18301
ของสมาชิกครับ
ผมได้นำมาปรับเพิ่มเติมในฟอร์มการค้นหา แต่ติดปัญหาไม่สามารถใช้งานได้

Code: Select all

Option Explicit
Dim FormEvents As Boolean
Private Sub ClearForm(Except As String)
    Select Case Except
    
        Case "ReceiveNO"
            FormEvents = False
            BookNO.value = ""
            DateIN.value = ""
            From.value = ""
            Too.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True

        Case "BookNO"
            FormEvents = False
            ReceiveNO.value = ""
            DateIN.value = ""
            From.value = ""
            Too.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True

        Case "DateIN"
            FormEvents = False
            ReceiveNO.value = ""
            BookNO.value = ""
            From.value = ""
            Too.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True

        Case "From"
            FormEvents = False
            ReceiveNO.value = ""
            BookNO.value = ""
            DateIN.value = ""
            Too.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True
        
        Case "Too"
            FormEvents = False
            ReceiveNO.value = ""
            BookNO.value = ""
            DateIN.value = ""
            From.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True
            
        Case "Detail"
            FormEvents = False
            ReceiveNO.value = ""
            BookNO.value = ""
            DateIN.value = ""
            From.value = ""
            Too.value = ""
            Results.Clear
            FormEvents = True
            
        Case Else
            FormEvents = False
            ReceiveNO.value = ""
            BookNO.value = ""
            DateIN.value = ""
            From.value = ""
            Too.value = ""
            Detail.value = ""
            Results.Clear
            FormEvents = True
            
        End Select

End Sub

Private Sub BasicCalendar_Click()
    dateVariable = CalendarForm.GetDate
    If dateVariable <> 0 Then SearchForm.DateIN.Text = Format(dateVariable, "d mmm yyyy")
End Sub

Private Sub ClearBtn_Click()

    ClearForm ("")
    
End Sub

Private Sub CloseBtn_Click()
    
    Me.Hide

End Sub

Private Sub ReceiveNO_Change()
    
    If FormEvents Then ClearForm ("ReceiveNO")
    
End Sub

Private Sub BookNO_Change()
    
    If FormEvents Then ClearForm ("BookNO")
    
End Sub

Private Sub DateIN_Change()
    
    If FormEvents Then ClearForm ("DateIN")
    
End Sub

Private Sub From_Change()
    
    If FormEvents Then ClearForm ("From")
    
End Sub

Private Sub Too_Change()
    
    If FormEvents Then ClearForm ("Too")
    
End Sub

Private Sub Detail_Change()
    
    If FormEvents Then ClearForm ("Detail")
    
End Sub
Private Sub SearchBtn_Click()

    Dim SearchTerm As String
    Dim SearchColumn As String
    Dim RecordRange As Range
    Dim FirstAddress As String
    Dim FirstCell As Range
    Dim RowCount As Integer
    
    If ReceiveNO.value = "" And BookNO.value = "" And DateIN.value = "" And From.value = "" And Too.value = "" And Detail.value = "" Then
    
        MsgBox "No search term specified", vbCritical + vbOKOnly
        Exit Sub
    
    End If
  
    If ReceiveNO.value <> "" Then
    
        SearchTerm = ReceiveNO.value
        SearchColumn = "เลขทะเบียนรับ"
        
    End If
    
    If BookNO.value <> "" Then
    
        SearchTerm = BookNO.value
        SearchColumn = "ที่"
        
    End If

    If DateIN.value <> "" Then
    
        SearchTerm = DateIN.value
        SearchColumn = "ลงวันที่"
        
    End If

    If From.value <> "" Then
    
        SearchTerm = From.value
        SearchColumn = "จาก"
        
    End If
    
    If Too.value <> "" Then
    
        SearchTerm = Too.value
        SearchColumn = "ถึง"
        
    End If
    
    If Detail.value <> "" Then
    
        SearchTerm = Detail.value
        SearchColumn = "เรื่อง"
    End If 
    Results.Clear
        With Range("data[" & SearchColumn & "]")
            Set RecordRange = .Find(SearchTerm, LookIn:=xlValues)
            If Not RecordRange Is Nothing Then
                FirstAddress = RecordRange.Address
                RowCount = 0
                Do
                    Set FirstCell = Range("B" & RecordRange.Row)
                    Results.AddItem
                    Results.List(RowCount, 0) = FirstCell(1, 1)
                    Results.List(RowCount, 1) = FirstCell(1, 2)
                    Results.List(RowCount, 2) = FirstCell(1, 3)
                    Results.List(RowCount, 3) = FirstCell(1, 4)
                    Results.List(RowCount, 4) = FirstCell(1, 5)
                    Results.List(RowCount, 5) = FirstCell(1, 6)
                    RowCount = RowCount + 1
                    Set RecordRange = .FindNext(RecordRange)
                    If RecordRange Is Nothing Then
                        Exit Sub
                    End If
                Loop While RecordRange.Address <> FirstAddress
            Else         
                Results.AddItem
                Results.List(RowCount, 0) = "ไม่พบข้อมูลที่ต้องการ!!!"        
            End If
        End With
End Sub

Private Sub UserForm_Initialize()

    FormEvents = True

End Sub
แต่เกิด error ตามภาพครับ
อีกปัญหาคือผมทำฟังก์ชั่นปฏิทินในฟอร์มค้นหา แต่ไม่สามารถใช้งานได้ แต่ทำในฟอร์มหลักสามารถใช้งานได้ รบกวนแนะนำการปัญหาด้วยครับ
Code ของปฏิทินครับ

Code: Select all

Private Sub BasicCalendar_Click()
    dateVariable = CalendarForm.GetDate
    If dateVariable <> 0 Then SearchForm.DateIN.Text = Format(dateVariable, "d mmm yyyy")
End Sub
ขอบพระคุณครับ
Attachments
ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(338.29 KiB) Downloaded 6 times
1004.jpg
1004.jpg (48.18 KiB) Viewed 173 times
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#2

Post by 9KiTTi »

ตอนนี้ผมสามารถแก้ไขเรื่องปฏิทินได้แล้วครับ แต่พอกด seaarch แล้ว ไม่สามารถค้นหาข้อมูลได้ครับ รบกวนแนะนำผมด้วยครับ

ขอบพระคุณครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#3

Post by snasui »

:D กรุณาแนบไฟล์ล่าสุดมาด้วยจะได้ตอบต่อไปจากนั้นครับ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#4

Post by 9KiTTi »

ไฟล์ล่าสุดครับ
Attachments
ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(339.29 KiB) Downloaded 9 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#5

Post by snasui »

9KiTTi wrote: Thu Sep 23, 2021 8:08 pm ตอนนี้ผมสามารถแก้ไขเรื่องปฏิทินได้แล้วครับ แต่พอกด seaarch แล้ว ไม่สามารถค้นหาข้อมูลได้ครับ รบกวนแนะนำผมด้วยครับ

ขอบพระคุณครับ
:D กรุณาอธิบายเรื่องการ Search มาอย่างละเอียดว่าปุ่ม Search อยู่ใน Form ไหน ค่าทดสอบคือค่าใด ผลลัพธ์ที่ถูกต้องควรมีค่าใด จะได้เข้าถึงปัญหาโดยเร็วครับ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#6

Post by 9KiTTi »

ปุ่ม search จะอยู่ในหน้าหนังสือทะเบียนรับ อยู่ใน frame รายละเอียดหนังสือ เลือกหมวดรายการค้นหาจาก "ค้นหาจาก" โดยใส่คำในช่อง "สิ่งที่ต้องการค้นหา" แล้วกด Search ครับ ถ้าจากพบข้อมูลในแสดงรายละเอียดใน listbox ข้างล่างครับ แต่หลังจากกดแล้วขึ้น ขึ้น rum-time error 1004 ครับ
vba ที่มใช้กับปุ่ม search ตามนี้ครับ

Code: Select all

Sub SearchData()

    Application.ScreenUpdating = False
    
    Dim shDatabase As Worksheet ' Database sheet
    Dim shSearchData As Worksheet 'SearchData sheet
    
    Dim iColumn As Integer 'To hold the selected column number in Database sheet
    Dim iDatabaseRow As Long 'To store the last non-blank row number available in Database sheet
    Dim iSearchRow As Long 'To hold the last non-blank row number available in SearachData sheet
    
    Dim sColumn As String 'To store the column selection
    Dim sValue As String 'To hold the search text value
    
    
    Set shDatabase = ThisWorkbook.Sheets("Database")
    Set shSearchData = ThisWorkbook.Sheets("SearchData")
    
    
    iDatabaseRow = ThisWorkbook.Sheets("Database").Range("A" & Application.Rows.Count).End(xlUp).Row
    
    
    sColumn = frmForm.cmbSearchColumn.value
    
    sValue = frmForm.txtSearch.value
    
    
    iColumn = Application.WorksheetFunction.Match(sColumn, shDatabase.Range("A1:K1"), 0)
    
    'Remove filter from Database worksheet
    
    If shDatabase.FilterMode = True Then
    
       shDatabase.AutoFilterMode = False
    
    End If

    'Apply filter on Database worksheet
    
    If frmForm.cmbSearchColumn.value = "เลขทะเบียนรับ" Then
    
        shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:=sValue
    
    Else
    
        shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:="*" & sValue & "*"
    
    End If
    
    If Application.WorksheetFunction.Subtotal(3, shDatabase.Range("C:C")) >= 2 Then
    
        'Code to remove the previous data from SearchData worksheet
        
        shSearchData.Cells.Clear
        
        shDatabase.AutoFilter.Range.Copy shSearchData.Range("A1")
        
        Application.CutCopyMode = False
        
        iSearchRow = shSearchData.Range("A" & Application.Rows.Count).End(xlUp).Row
        
        
        frmForm.lstDatabase.ColumnCount = 12
        
        frmForm.lstDatabase.ColumnWidths = "40,70,75,75,75,80,70,70,70,350,70,70"
        
        If iSearchRow > 1 Then
        
            frmForm.lstDatabase.RowSource = "SearchData!A2:K" & iSearchRow
            
            MsgBox "ไม่พบข้อมูลที่ค้นหา"
        
        End If
        
        
    Else
    
       MsgBox "No record found."
    
    End If

    shDatabase.AutoFilterMode = False
    Application.ScreenUpdating = True


End Sub
ขอวิธีแก้ไขด้วยครับ ขอบพระคุณครับ
Attachments
ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(344.11 KiB) Downloaded 8 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#7

Post by snasui »

:D กำหนดของเขต Table ใหม่ตามภาพครับ
ResizesTable.png
ResizesTable.png (59.77 KiB) Viewed 141 times
Attachments
Ans_ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(481.18 KiB) Downloaded 10 times
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#8

Post by 9KiTTi »

snasui wrote: Sun Sep 26, 2021 6:53 am :D กำหนดของเขต Table ใหม่ตามภาพครับ

ResizesTable.png
ผมลองปรับอย่างที่อาจารย์แนะนำแล้วครับ แต่สามารถค้นหาได้แค่ตัวเลือกตัวเดียวครับ และค้นหาจากตัวเลือกได้แค่แถวที่1 กับ 2 ครับ ส่วนตัวเลือกอื่นค้นหาไม่ได้ครับ
Attachments
book.jpg
book.jpg (64.36 KiB) Viewed 136 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#9

Post by snasui »

:D ควร Debug Code ด้วยตนเองแล้วแจ้งมาว่าบรรทัดไหนไม่ทำงาน หรือทำงานไม่ตรงกับที่ต้องการครับ

การใช้ Code จำเป็นต้อง Debug ให้เป็นไม่เช่นนั้นจะทำงานกับ VBA ได้อย่างลำบาก วิธีการ Debug Code ดูเบี้องต้นได้ตาม Link นี้ครับ https://snasui.com/viewtopic.php?f=3&t= ... 47#p103247

Code ที่เขียนควรทำให้คอลัมน์การค้นหาผันแปรไปตาม Item ที่เลือกใน ComboBox ไม่เช่นนั้นย่อมนำค่าต้นทางไปค้นได้ไม่ตรงกับคอลัมน์ปลายทาง

ก่อนการค้นหาทุกครั้งจะต้องยกเลิกการ Filter (ถ้ามี) ทิ้งเสียก่อน ตัวอย่าง Code บางส่วนตามด้านล่างครับ

Code: Select all

'Other code
'Remove filter from Database worksheet
    
If shDatabase.FilterMode = True Then
    shDatabase.AutoFilterMode = False
    shDatabase.ShowAllData
End If

'Apply filter on Database worksheet

If frmForm.cmbSearchColumn.value = "เลขทะเบียนรับ" Then

    shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:=sValue

Else

    shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:="*" & sValue & "*"

End If

If Application.WorksheetFunction.Subtotal(3, shDatabase.Columns(iColumn)) >= 2 Then

    'Code to remove the previous data from SearchData worksheet
    
    shSearchData.Cells.Clear
    
    shDatabase.UsedRange.Copy shSearchData.Range("A1")
'Other code
Attachments
Ans_ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(494.55 KiB) Downloaded 22 times
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#10

Post by 9KiTTi »

snasui wrote: Sun Sep 26, 2021 12:30 pm :D ควร Debug Code ด้วยตนเองแล้วแจ้งมาว่าบรรทัดไหนไม่ทำงาน หรือทำงานไม่ตรงกับที่ต้องการครับ

การใช้ Code จำเป็นต้อง Debug ให้เป็นไม่เช่นนั้นจะทำงานกับ VBA ได้อย่างลำบาก วิธีการ Debug Code ดูเบี้องต้นได้ตาม Link นี้ครับ viewtopic.php?f=3&t=17483&p=103247#p103247

Code ที่เขียนควรทำให้คอลัมน์การค้นหาผันแปรไปตาม Item ที่เลือกใน ComboBox ไม่เช่นนั้นย่อมนำค่าต้นทางไปค้นได้ไม่ตรงกับคอลัมน์ปลายทาง

ก่อนการค้นหาทุกครั้งจะต้องยกเลิกการ Filter (ถ้ามี) ทิ้งเสียก่อน ตัวอย่าง Code บางส่วนตามด้านล่างครับ

Code: Select all

'Other code
'Remove filter from Database worksheet
    
If shDatabase.FilterMode = True Then
    shDatabase.AutoFilterMode = False
    shDatabase.ShowAllData
End If

'Apply filter on Database worksheet

If frmForm.cmbSearchColumn.value = "เลขทะเบียนรับ" Then

    shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:=sValue

Else

    shDatabase.Range("A1:K" & iDatabaseRow).AutoFilter Field:=iColumn, Criteria1:="*" & sValue & "*"

End If

If Application.WorksheetFunction.Subtotal(3, shDatabase.Columns(iColumn)) >= 2 Then

    'Code to remove the previous data from SearchData worksheet
    
    shSearchData.Cells.Clear
    
    shDatabase.UsedRange.Copy shSearchData.Range("A1")
'Other code
ขออภัยอาจารย์ครับ ผมพึ่งได้ทดสอบ พึ่งมีเวลาว่างจากเรื่องโควิดครับ ผมได้ลองไฟล์ที่อาจารย์ตอบมาให้ พบว่าหลังจากที่กดค้นหาแล้ว สามารถค้นหาได้เพียงครั้งแรก หลังจากนั้นพอ Debug อย่างที่อาจารย์แล้วพบปัญหาตามภาพที่แนบมาครับ และหลังจากเปิดดู Sheet database พบว่าคอลัมม์ยังมี Filter ที่คอมลลัม์แม้จะเขียน code เพื่อปิดการทำงานแล้วครับ

รบกวนอาจารย์แนะนำด้วยครับ ขอบพระคุณครับ
Attachments
debug.jpg
debug.jpg (55.33 KiB) Viewed 105 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#11

Post by snasui »

:D กรุณาแนบไฟล์ล่าสุดมาด้วยครับ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#12

Post by 9KiTTi »

snasui wrote: Tue Oct 19, 2021 6:40 pm :D กรุณาแนบไฟล์ล่าสุดมาด้วยครับ
ขออภัยครับอาจารย์ ผมลืมครับ
Attachments
ทะเบียนหนังสือรับ อบต.น้ำทรง ปี 2564.xlsm
(486.85 KiB) Downloaded 14 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31205
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#13

Post by snasui »

:D ลองปรับ Code เป็นด้านล่างครับ

Code: Select all

'Other code
If shDatabase.FilterMode Then
    shDatabase.AutoFilterMode = False
    'shDatabase.ShowAllData
    shDatabase.ListObjects("Table2").AutoFilter.ShowAllData
End If
'Other code
ทั้งนี้เนื่องจากมีการใช้ Table แทน Range ธรรมดา อย่าลืมแก้ส่วนอื่นเช่นการแสดงข้อมูลบน Message Box ให้แสดงข้อมูลที่สอดคล้องกับที่เป็นจริงด้วยครับ
9KiTTi
Member
Member
Posts: 227
Joined: Thu Jun 28, 2012 3:46 pm
Excel Ver: 2016,2019

Re: ขออนุญาตสอบถามเรื่องปัญหา code การค้นหาและปฏิทิน

#14

Post by 9KiTTi »

snasui wrote: Tue Oct 19, 2021 8:26 pm :D ลองปรับ Code เป็นด้านล่างครับ

Code: Select all

'Other code
If shDatabase.FilterMode Then
    shDatabase.AutoFilterMode = False
    'shDatabase.ShowAllData
    shDatabase.ListObjects("Table2").AutoFilter.ShowAllData
End If
'Other code
ทั้งนี้เนื่องจากมีการใช้ Table แทน Range ธรรมดา อย่าลืมแก้ส่วนอื่นเช่นการแสดงข้อมูลบน Message Box ให้แสดงข้อมูลที่สอดคล้องกับที่เป็นจริงด้วยครับ
ใช้งานได้แล้วครับ รวมทั้งแก้ไข Message Box ตามที่อาจารย์แนะนำด้วยครับ เหลือทำในส่วนหนังสือส่ง ขอบพระคุณครับอาจารย์
Post Reply