Page 1 of 1

สอบถามโค้ด VBA Filter ให้สามารถใช้ข้ามชีทได้ 2 ชีทค่ะ

Posted: Mon Oct 28, 2019 2:47 pm
by babybee08
เนื่องจากต้องการ Filter งานจาก ชีท D_Invoice (2) และ D_Invoice มาวางวิเคราะห์ใน Aging เพื่อเปรียบเทียบกัน
แต่โค้ด VBA ที่ใช้ตอนนี้ สามารถ Filter ได้แค่ชีทเดียว ไม่ทราบว่าต้องแก้ไขโค้ดตรงส่วนใดบ้างค่ะ

โค้ดที่ใช้ค่ะ

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
   If Range("b3") = 0 Or Range("b3") = "" Then Range("b3") = " "
   If Not Intersect(Target, Target.Worksheet.Range("b3")) Is Nothing Then
      Sheets("D_Invoice").Range("B3:F20").AdvancedFilter _
      Action:=xlFilterCopy, _
      CriteriaRange:=Sheets("Aging").Range("b2:b3"), _
      CopytoRange:=Sheets("Aging").Range("B8:E24")
   End If
End Sub
ขอบคุณค่ะ

Re: สอบถามโค้ด VBA Filter ให้สามารถใช้ข้ามชีทได้ 2 ชีทค่ะ

Posted: Mon Oct 28, 2019 2:55 pm
by puriwutpokin
ปรับเป็น

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
   If Range("b3") = 0 Or Range("b3") = "" Then Range("b3") = " "
   If Not Intersect(Target, Target.Worksheet.Range("b3")) Is Nothing Then
      Sheets("D_Invoice").Range("B3:F20").AdvancedFilter _
      Action:=xlFilterCopy, _
      CriteriaRange:=Sheets("Aging").Range("b2:b3"), _
      CopytoRange:=Sheets("Aging").Range("B8:E24")
   End If
      If Range("f3") = 0 Or Range("f3") = "" Then Range("f3") = " "
   If Not Intersect(Target, Target.Worksheet.Range("f3")) Is Nothing Then
      Sheet6.Range("B3:F20").AdvancedFilter _
      Action:=xlFilterCopy, _
      CriteriaRange:=Sheets("Aging").Range("f2:f3"), _
      CopytoRange:=Sheets("Aging").Range("F8:I24")
   End If
End Sub

Re: สอบถามโค้ด VBA Filter ให้สามารถใช้ข้ามชีทได้ 2 ชีทค่ะ

Posted: Mon Oct 28, 2019 5:14 pm
by babybee08
ปรับข้อมูลได้แล้วค่ะ ขอบคุณมากนะคะ