Page 1 of 1

การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Wed Feb 06, 2013 1:35 pm
by วังวู ช่ง
เรียน ท่าน อาจารย์ ครับ ถ้าอยากเลือก Product ใน A2 ส่วน A4:B20 ให้แสดงข้อมูณของ Product ที่เลือกใน A2 ครับ แต่ใช้ Filter ครับ เรียนท่าน อาจารย์ ดูที่ sheet2 ครับ
http://www.snasui.com/viewtopic.php?f=10&t=3742

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Wed Feb 06, 2013 2:09 pm
by snasui
:D การทำเช่นนั้นสามารถบันทึก Macro แล้วปรับ Code ทีได้จากการบันทึก Macro มาใช้ได้ครับ

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Thu Feb 07, 2013 9:11 pm
by วังวู ช่ง
snasui wrote::D การทำเช่นนั้นสามารถบันทึก Macro แล้วปรับ Code ทีได้จากการบันทึก Macro มาใช้ได้ครับ
เรียน ท่าน อาจารย์ครับ ถ้าผมบันทึกได้แบบนี้จะปรับอย่างไลครับ ช่วยปรับให้แด่
ขอบคุณล่วงหน้าครับ

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Thu Feb 07, 2013 9:24 pm
by snasui
:D ที่ Module1 ปรับ Code เป็น

Code: Select all

Sub Macro1()
    ActiveSheet.Range("$A$3:$B$20").AutoFilter Field:=1, Criteria1:=Range("A2").Value
End Sub
ที่ Sheet2 เพิ่ม Code เป็นตามด้านล่างครับ

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$2" Then Call Module1.Macro1
End Sub

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Thu Feb 07, 2013 9:31 pm
by วังวู ช่ง
snasui wrote::D ที่ Module1 ปรับ Code เป็น

Code: Select all

Sub Macro1()
    ActiveSheet.Range("$A$3:$B$20").AutoFilter Field:=1, Criteria1:=Range("A2").Value
End Sub
ที่ Sheet2 เพิ่ม Code เป็นตามด้านล่างครับ

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$2" Then Call Module1.Macro1
End Sub
:D ขอบคุณมากๆครับ ท่าน อาจารย์ ครับ ได้คำตอบจิงๆครับ
นับถือครับ

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Tue Feb 12, 2013 8:19 pm
by วังวู ช่ง
รบกวนอีกครับ ท่านอาจารย์ครับ เมื่อ A2 เป็นหว่าง ให้มันแสดงทังหมด ผมทำแต่ไม่ทำงานครับ เรียนอาจารย์ช่วยปรับให้ด้วยครับคือ ผมเอา

Code: Select all

    Range("A2") = Empty
    Selection.AutoFilter
มาต่อกรับ

Code: Select all

Sub Filter()
    ActiveSheet.Range("$A$3:$B$20").AutoFilter Field:=1, Criteria1:=Range("A2").Value
End Sub
แต่ไม่ทำงานครับ
ขอบคุณล่วงหน้าครับ

Re: การนำรายการแรกที่ได้จากการ Filter มาแสดง

Posted: Tue Feb 12, 2013 8:25 pm
by snasui
:D ปรับ Code ที่ Filter เป็นตามด้านล่างครับ

Code: Select all

Sub Filter()
    On Error Resume Next
    If Range("A2") = "" Then
        ActiveSheet.ShowAllData
    Else
        ActiveSheet.Range("$A$3:$B$20").AutoFilter Field:=1, _
            Criteria1:=Range("A2").Value
    End If
End Sub