Tablas Dinámicas soluciones y preguntas frecuentes

1.2. Modificar una sentencia SQL de una Tablas Dinámica Excel




Para modificar la sentecia SQL que carga los datos a una Tabla Dinámica Microsoft Excel usa este código de Visual Basic Editor for Appliactions en Microsoft Excel:


' (c) www.etl-tools.info
Sub ModifyPivotSql()

    Dim pc As PivotCache
    Dim oldSql As String
    Dim newSql As String

    newSql = "SELECT * FROM NEW_FACT_TABLE"
    
    For Each pc In ActiveWorkbook.PivotCaches
        
        oldSql = pc.Sql
        Debug.Print "Before: " & oldSql
        
        pc.Sql = Application.Substitute(pc.Sql, oldSql, newSql)
        
        Debug.Print "After: " & pc.Sql
   
    Next pc
End Sub