vba क्या - एक मैक्रो के साथ मेरी एक्सेल कार्यपुस्तिका में सभी पिवट टेबल को ताज़ा करना




5 Answers

हाँ।

ThisWorkbook.RefreshAll

या, यदि आपका एक्सेल संस्करण पुराना पुराना है,

Dim Sheet as WorkSheet, Pivot as PivotTable
For Each Sheet in ThisWorkbook.WorkSheets
    For Each Pivot in Sheet.PivotTables
        Pivot.RefreshTable
        Pivot.Update
    Next
Next
है इन

मेरे पास 20 अलग-अलग पिवट टेबल के साथ एक कार्यपुस्तिका है। क्या सभी पिवोट टेबल ढूंढने और उन्हें वीबीए में रीफ्रेश करने का कोई आसान तरीका है?




ActiveWorkbook.RefreshAll केवल पिवोट टेबल नहीं बल्कि ओडीबीसी प्रश्नों को भी ताज़ा करता है। मेरे पास कुछ वीबीए प्रश्न हैं जो डेटा कनेक्शन का संदर्भ देते हैं और इस विकल्प का उपयोग करते हुए क्रैश होते हैं क्योंकि कमांड VBA से दिए गए विवरण के बिना डेटा कनेक्शन चलाता है

यदि आप केवल पिवेट रीफ्रेश करना चाहते हैं तो मैं विकल्प की अनुशंसा करता हूं

Sub RefreshPivotTables()     
  Dim pivotTable As PivotTable     
  For Each pivotTable In ActiveSheet.PivotTables         
    pivotTable.RefreshTable     
  Next 
End Sub 



पिवोट टेबल टूल बार में सभी विकल्प रीफ्रेश करें। वह पर्याप्त है। कुछ और करने की ज़रूरत नहीं है।

Ctrl + alt + F5 दबाएं




कोड

Private Sub Worksheet_Activate()
    Dim PvtTbl As PivotTable
        Cells.EntireColumn.AutoFit
        For Each PvtTbl In Worksheets("Sales Details").PivotTables
        PvtTbl.RefreshTable
        Next
End Sub 

ठीक काम करता है।

कोड सक्रिय शीट मॉड्यूल में प्रयोग किया जाता है, इस प्रकार शीट सक्रिय होने पर यह एक झिलमिलाहट / गड़बड़ी प्रदर्शित करता है।




मैंने हाल ही में नीचे सूचीबद्ध कमांड का उपयोग किया है और ऐसा लगता है कि यह ठीक काम करता है।

ActiveWorkbook.RefreshAll

उम्मीद है की वो मदद करदे।




Related

vba excel-vba refresh