What is the best way to make charts for large, constantly updating workbooks?

Copper Contributor

I am looking for the best way to make charts for large workbooks.
I currently have a large workbook with historical data for dozens if not over a hundred variables (spread over a few sheets) that is also updated monthly. It is large enough that while it works pretty well when used normally, adding a few complications slows it down dramatically. My workplace also likes to have charts for all of the data.


I am considering making a second workbook that just has charts that reference the data in this original workbook, but I am not sure if this is a good option. I do not anticipate these particular files being moved, but I am wondering if there might be other problems that could potentially appear if I go this route. Are there other options I should consider for this data?

2 Replies


When dealing with large workbooks that include historical data for numerous variables, and you want to create charts efficiently, it's a good idea to optimize your approach to ensure performance. Creating a separate workbook for charts can be a viable solution. Here are some suggestions:

1. Separate Workbook for Charts:

  • Advantages:
    • Reduces the size and complexity of the main workbook, potentially improving performance.
    • Easier to manage and update charts independently.
  • Considerations:
    • Ensure that both workbooks are stored in the same location to avoid broken links.
    • Use structured references or defined names in your charts to make them dynamic.

2. Table Structures:

  • Use Excel Tables (ListObjects) to structure your data.
    • This makes it easier to add new data, and charts automatically update as the table expands.
    • Formulas and charts that refer to the table will automatically include new data.

3. Dynamic Named Ranges:

  • Utilize dynamic named ranges for your data to ensure that your charts automatically update as new data is added.
  • This can be especially useful when dealing with data that grows over time.

4. Data Consolidation:

  • If your data is spread over multiple sheets, consider consolidating it into a single sheet or structured tables.
  • This simplifies the process of creating charts and makes the data more manageable.

5. PivotCharts:

  • PivotCharts can be an effective way to visualize large datasets and dynamically update based on changes to the underlying data.
  • They can handle large amounts of data efficiently.

6. Performance Optimization:

  • Use Excel's calculation options to optimize performance. For example, set calculation to manual and only recalculate when needed.
  • Disable automatic workbook calculation if it's not necessary for your workflow.

7. Consider Excel Version:

  • The performance of Excel may vary between versions. If you have access to a newer version, you might experience improved performance.

8. Power Query (Get & Transform):

  • Use Power Query to import and transform your data before creating charts. It's efficient for handling large datasets and allows for data shaping.

9. Data Model and Power Pivot:

  • If your dataset becomes very large, consider using Excel's Data Model and Power Pivot for more advanced data modeling and relationships.

10. Regular Workbook Maintenance:

  • Periodically clean up and optimize your workbook by removing unnecessary data, unused sheets, or redundant calculations.

Remember to test any changes in a backup copy of your workbook to ensure that the modifications don't negatively impact your data or charts. Additionally, regularly save and back up your work to prevent data loss. In the end, you know best which path is best for you.The text and steps were edited with the help of AI.


My answers are voluntary and without guarantee!


Hope this will help you.

Was the answer useful? Mark as best response and Like it!

This will help all forum participants.Formularbeginn

adding a few complications slows it down dramatically.
what kind of complications?
If because of too many datas,I prefer a web solution with echarts as below: