วิธีรีเฟรช 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: วิธีนับค่าที่ไม่ซ้ำในช่วง