Note: The other languages of the website are Google-translated. Back to English

 วิธีอัปเดตผลลัพธ์ตัวกรองขั้นสูงโดยอัตโนมัติใน Excel

เมื่อเราใช้คุณสมบัติตัวกรองขั้นสูงเราจะพบว่าผลการกรองจะไม่เปลี่ยนแปลงโดยอัตโนมัติเมื่อมีการเปลี่ยนแปลงเกณฑ์ สิ่งนี้ต้องการให้เราใช้ฟังก์ชันตัวกรองขั้นสูงอีกครั้งเพื่อให้ได้ผลลัพธ์ใหม่ แต่คุณมีเคล็ดลับที่ดีและรวดเร็วในการอัปเดตผลลัพธ์ตัวกรองขั้นสูงโดยอัตโนมัติตามภาพหน้าจอต่อไปนี้ที่แสดงใน Excel หรือไม่?

อัปเดตผลการกรองขั้นสูงโดยอัตโนมัติด้วยรหัส VBA


อัปเดตผลการกรองขั้นสูงโดยอัตโนมัติด้วยรหัส VBA

รหัส VBA ต่อไปนี้อาจช่วยให้คุณอัปเดตผลการกรองขั้นสูงโดยอัตโนมัติเมื่อคุณเปลี่ยนเกณฑ์ตามที่คุณต้องการโปรดดำเนินการดังนี้:

1. คลิกขวาที่แท็บแผ่นงานที่คุณต้องการกรองข้อมูลโดยอัตโนมัติจากนั้นเลือก ดูรหัส จากเมนูบริบทในเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคัดลอกและวางรหัสต่อไปนี้ลงในโมดูลเปล่า:

รหัส VBA: อัปเดตผลการกรองขั้นสูงโดยอัตโนมัติ:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A5:D21").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range _
("A1:C3"), Unique:=False
End Sub

หมายเหตุ: ในโค้ดด้านบน: A5: D21 คือช่วงข้อมูลที่คุณต้องการกรอง A1: C3 คือช่วงเกณฑ์ที่จะกรองตาม

2. จากนั้นบันทึกและปิดหน้าต่างรหัสตอนนี้เมื่อคุณเปลี่ยนเกณฑ์ในช่วงเกณฑ์ผลลัพธ์ที่กรองจะได้รับการอัปเดตโดยอัตโนมัติในครั้งเดียว


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (9)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะรีเฟรชทุกครั้งที่มีการเปลี่ยนแปลงข้อมูล

เป็นไปได้ไหมที่จะรีเฟรชเมื่อเกณฑ์เปลี่ยนแปลงเท่านั้น
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันสามารถทำเกณฑ์มาจากแผ่นงานที่สองได้หรือไม่?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Bonjour, merci pour votre post qui m'aide enormément. Toutefois quel serait le code à ajouter pour coller le résultat dans un tableau d'une autre feuille de fichier et si เป็นไปได้ เท au ทางเดิน ne coller que surees colonnes ?
Pour être plus précise, en utilisant votre votre exemple je voudrais copier uniquement les colonnes "Product" et "Name" du résultat du filtre et ce dans une nouvelle feuille. เมอร์ซี่.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Ce code donne une erreur 1004 reférence non valide. pouvez vous corriger le รหัสข้อเสนอ?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
@ฮันนาห์: ใช่ มันเป็นไปได้
ในรหัสต่อไปนี้เกณฑ์อยู่ในแผ่นงาน "ตัวกรอง"


แผ่นงานย่อยส่วนตัว_SelectionChange(ByVal Target As Range)
ช่วง("A5:D23")).AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
ชีต("ตัวกรอง").Range("A1:C3"), Unique:=False
ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี รหัสนี้ทำงานได้อย่างสมบูรณ์ มีเพียงปัญหาเดียว ฟังก์ชันคัดลอก/วางไม่ทำงานอีกต่อไป
จะแก้ไขได้อย่างไร?
ขอบคุณล่วงหน้า
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มีวิธีการทำเช่นนี้โดยไม่ใช้ VBA หรือไม่?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันกำลังใช้ตัวกรองขั้นสูงสำหรับคอลัมน์เดียวสำหรับค่าที่ไม่ซ้ำกัน (โดยไม่มีเกณฑ์) ฉันต้องการให้มันปรับปรุงด้วยตัวเอง

คุณช่วยฉันด้วยได้ไหม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
นี้ไม่น่าจะเกี่ยวข้องอีกต่อไป ขณะนี้ Office excel มีฟังก์ชัน FILTER ที่อัปเดตอัตโนมัติจากสิ่งที่ฉันรวบรวม ทำให้ตัวกรองขั้นสูงเป็นตารางสาระสำคัญที่ไม่แน่นอน ฟังก์ชัน FILTER คือสิ่งที่ควรจะใช้ต่อไปหรือไม่? ดูเหมือนว่าวิธีแก้ปัญหาของ excel สำหรับปัญหาที่คุณระบุไว้ข้างต้นไม่จำเป็นต้องให้ VBA ทำ
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ