วิธีรีเฟรช pivottables ใน vba (พร้อมตัวอย่าง)


คุณสามารถใช้วิธีการต่อไปนี้เพื่อรีเฟรชตารางสาระสำคัญใน Excel โดยใช้ VBA:

วิธีที่ 1: รีเฟรชตารางสาระสำคัญเฉพาะ

 Sub RefreshPivotTable()
    Sheet1.PivotTables(" PivotTable1 ").Refreshtable
End Sub

มาโครเฉพาะนี้จะรีเฟรชเฉพาะค่าในตาราง Pivot ที่เรียกว่า PivotTable1 ใน แผ่นงาน 1 ของสมุดงาน

วิธีที่ 2: รีเฟรชตารางสาระสำคัญทั้งหมดในสมุดงาน

 Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

มาโครนี้จะรีเฟรชค่าของตารางเดือยแต่ละตารางในสมุดงานทั้งหมด

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ

ตัวอย่างที่ 1: รีเฟรชตารางสรุปเฉพาะ

สมมติว่าเราสร้างตารางสาระสำคัญจากชุดข้อมูลใน Excel:

เมื่อเราอยู่ใน แท็บการวิเคราะห์ PivotTable ตามแนว Ribbon ด้านบนของ Excel เราจะเห็นที่มุมซ้ายบนว่า PivotTable นี้เรียกว่า PivotTable1

สมมติว่าเราเปลี่ยนค่าสุดท้ายของคอลัมน์จุดในชุดข้อมูลจาก 22 เป็น 200 :

เราสามารถสร้างมาโครต่อไปนี้เพื่อรีเฟรชค่าของตารางสาระสำคัญนี้:

 Sub RefreshPivotTable()
    Sheet1.PivotTables(" PivotTable1 ").Refreshtable
End Sub

เมื่อเราเรียกใช้มาโครนี้ ค่าตารางสรุปข้อมูลจะได้รับการอัปเดตโดยอัตโนมัติ:

ตัวอย่างที่ 2: รีเฟรชตารางสรุปทั้งหมดในสมุดงาน

สมมติว่าเราสร้างตาราง Pivot สองตารางจากชุดข้อมูลใน Excel:

ตารางเดือยแรกจะแสดงผลรวมคะแนนต่อทีมและต่อตำแหน่ง

ตารางสรุปตารางที่สองจะแสดงคะแนนเฉลี่ยตามทีมและตำแหน่ง

สมมติว่าเราเปลี่ยนค่าสุดท้ายของคอลัมน์จุดในชุดข้อมูลจาก 22 เป็น 200

เราสามารถสร้างมาโครต่อไปนี้เพื่อรีเฟรชค่าของตารางเดือยทั้งหมดในสมุดงานทั้งหมด:

 Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

เมื่อเราเรียกใช้มาโครนี้ ค่าในตาราง Pivot ทั้งสองจะได้รับการอัปเดตโดยอัตโนมัติ:

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:

VBA: วิธีเพิ่มค่าในช่วง
VBA: วิธีคำนวณค่าเฉลี่ยของช่วง
VBA: วิธีนับค่าที่ไม่ซ้ำในช่วง

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *