Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
I have a pivot attached to a list on a tab in the same workbook. When I
click on the Change Data Source option, the "Use an External Data Source" button is greyed out (I have a connection created already which I could select). How can I change the pivot from a local to an external data source? |
#2
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
You could create a temporary pivot table based on the connection to the
database. Then, programmatically set all the existing pivot tables to use the same pivot cache. For example, with the temporary pivot table on a worksheet named Temp: '==================== Sub ChangeCache() Dim ptNew As PivotTable Dim ws As Worksheet Dim pt As PivotTable Set ptNew = Worksheets("Temp").PivotTables(1) Debug.Print ptNew.CacheIndex For Each ws In ActiveWorkbook.Worksheets For Each pt In ws.PivotTables pt.CacheIndex = ptNew.CacheIndex Next pt Next ws End Sub '========================== -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: I have a pivot attached to a list on a tab in the same workbook. When I click on the Change Data Source option, the "Use an External Data Source" button is greyed out (I have a connection created already which I could select). How can I change the pivot from a local to an external data source? |
#3
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
This code did it, thanks (tho', there really should be a way to do this
manually). bdub "Debra Dalgleish" wrote: You could create a temporary pivot table based on the connection to the database. Then, programmatically set all the existing pivot tables to use the same pivot cache. For example, with the temporary pivot table on a worksheet named Temp: '==================== Sub ChangeCache() Dim ptNew As PivotTable Dim ws As Worksheet Dim pt As PivotTable Set ptNew = Worksheets("Temp").PivotTables(1) Debug.Print ptNew.CacheIndex For Each ws In ActiveWorkbook.Worksheets For Each pt In ws.PivotTables pt.CacheIndex = ptNew.CacheIndex Next pt Next ws End Sub '========================== -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: I have a pivot attached to a list on a tab in the same workbook. When I click on the Change Data Source option, the "Use an External Data Source" button is greyed out (I have a connection created already which I could select). How can I change the pivot from a local to an external data source? |
#4
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
I haven't found an efficient way to do it manually. You can open the old
PivotTable Wizard (Alt+D, p) and go back to Step 1, and change to an external data source. Then select the database that you want to use. -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: This code did it, thanks (tho', there really should be a way to do this manually). bdub "Debra Dalgleish" wrote: You could create a temporary pivot table based on the connection to the database. Then, programmatically set all the existing pivot tables to use the same pivot cache. For example, with the temporary pivot table on a worksheet named Temp: '==================== Sub ChangeCache() Dim ptNew As PivotTable Dim ws As Worksheet Dim pt As PivotTable Set ptNew = Worksheets("Temp").PivotTables(1) Debug.Print ptNew.CacheIndex For Each ws In ActiveWorkbook.Worksheets For Each pt In ws.PivotTables pt.CacheIndex = ptNew.CacheIndex Next pt Next ws End Sub '========================== -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: I have a pivot attached to a list on a tab in the same workbook. When I click on the Change Data Source option, the "Use an External Data Source" button is greyed out (I have a connection created already which I could select). How can I change the pivot from a local to an external data source? |
#5
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
I've tried this several times - and each time Excel sends an error report and
shuts down. ugh... "Debra Dalgleish" wrote: I haven't found an efficient way to do it manually. You can open the old PivotTable Wizard (Alt+D, p) and go back to Step 1, and change to an external data source. Then select the database that you want to use. -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: This code did it, thanks (tho', there really should be a way to do this manually). bdub "Debra Dalgleish" wrote: You could create a temporary pivot table based on the connection to the database. Then, programmatically set all the existing pivot tables to use the same pivot cache. For example, with the temporary pivot table on a worksheet named Temp: '==================== Sub ChangeCache() Dim ptNew As PivotTable Dim ws As Worksheet Dim pt As PivotTable Set ptNew = Worksheets("Temp").PivotTables(1) Debug.Print ptNew.CacheIndex For Each ws In ActiveWorkbook.Worksheets For Each pt In ws.PivotTables pt.CacheIndex = ptNew.CacheIndex Next pt Next ws End Sub '========================== -- Debra Dalgleish Excel FAQ, Tips & Book List http://www.contextures.com/tiptech.html "bdub" wrote: I have a pivot attached to a list on a tab in the same workbook. When I click on the Change Data Source option, the "Use an External Data Source" button is greyed out (I have a connection created already which I could select). How can I change the pivot from a local to an external data source? |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Excel 2007 change data source | Excel Discussion (Misc queries) | |||
change data source of pivot table | Excel Discussion (Misc queries) | |||
change the ODBC data source of a pivot table | Excel Discussion (Misc queries) | |||
Can't change source data path for Pivot Chart | Charts and Charting in Excel |