I have a template in excel, and a powerpoint template.
in the powerpoint template I have several charts linked to the excel template.
I want to make a loop that changes something in excel, so that the chart updates, "saveas" for both the excel and powerpoint file, so I have eg. 100 different excel files and 100 different powerpoint files, all build on the templates. I want to be able to manually alter some data in those 100 excelfiles, with the link to powerpoint still intact, so they are updated too if needed.
however, when I open the powerpoint templates, right click on a chart and select "edit data", then the chart is still linked to the excel template, not the saveas version of the excel file?
how do I change the link of a chart in powerpoint, to a different excel filename? the structure in the two excel files are identical.
the chart is created in excel and copy/pasted as "keep source formatting and chain data" (translated from danish)
any help would be greatly appreciated.
I have also tried a solution where the copy/paste is done via vba into an empty powerpoint template, but that is more time consuming, and powerpoint often crashes.
Assuming you have a reference to the shape represented by the linked chart in oSh, this will show you the link:
Debug.Print oSh.LinkFormat.SourceFullName
And this will change it to some other file:
oSh.LinkFormat.SourceFullName = "c:\some\path\yourfile.xls"
Most likely there will also be a !chartname or the like after yourfile.xls ... you'll need to include that.
And save the Excel files first, THEN change the link in the PPT to point to them. If you change the link to point to a non-existent file, PPT won't throw any errors; it'll simply leave the link unchanged.
Related
Each month I have to update a set of Powerpoint slides with the most recent data. Each slide has a chart. The data lives in an Excel file as do the charts. There are two business requirements:
I need to paste the chart as linked so that other users can access the underlying data
For each month there has to be a separate folder. I copy in the previous month's slides and Excel file.
Ideally, I would just have to update the data in the Excel file and then open the Powerpoint slides to have them update. The issue is that the charts are linked to the previous month's Excel file.
Is there a way to indicate to Powerpoint to use the Excel file in the same directory? We use version 2016 of the Office products.
On the PPT FAQ site that I maintain, there's a VBA macro that will help with this:
https://www.rdpslides.com/pptfaq/FAQ00759_Search_-_Replace_to_change_OLE_link_paths.htm
Rather than hard-coding the paths, you could substitute ActivePresentation.Path & "" to make it change the OLE links to the same file name but in the same folder as the current presentation.
I am currently in the following situation:
I have an Excel file where I perform calculations and charts + diagrams are created based on the calculations.
I have a PowerPoint report where I have to copy-paste these visualizations into.
I will need to repeat this process for many Excel files, all containing the same lay out. You can view them as a questionnaire: each Excel file is completed with different answers, though the structure remains the same.
Is there a way for me to create a template PowerPoint report file, where at the start I select which Excel file to 'load', and it pre-populates my PowerPoint file with the correct charts from the selected Excel file?
ndeed, there is a free option available. With SlideFab 2 (lite) you can automate Excel to Powerpoint without coding: You would need to setup the Powerpoint template and link all shapes with the required Excel ranges or charts. Then SlideFab creates the slides for you. When the structure is really the same, you could just let SlideFab connect to the next Excel file and rerun the slide-making process again.
You could also consider using RDBmerge to collect all workbook sheets into one Excel and using formulas to create a kind of staging area which is used for linking with Powerpoint. This would have the benefit that when you iterate a list of worksheet names, your lookup (e.g. using vlookup or index/match) functions would grab the appropriate data into the staging area. SlideFab could then create all slides at once through changing the selected worksheet in a repetitive way.
In case of questions, feel free to reach out.
Disclaimer: I am the owner of SlideFab 2.
Cheers
Jens
I am trying to create a presentation file which will contain many tables. These tables though might change. So, I would like to know if there is there a way to link the numbers of a table from an excel file, with the numbers of a table in a powerpoint slide ?
It's easy.
Steps:
Create the table in Excel
Copy the table in Excel
Prepare the slide in PowerPoint
Paste Special the Table on Your PowerPoint slide, using Paste Link
Resize and position the table object
And it's done!
Example:
Here's an example image of Paste Special and Paste Link options:
Hints:
If you update the Excel spreadsheet data, when the PowerPoint file is opened, the new data will be retrieved and displayed. (The system mays asks you to Update the linked data. Always update it with the latest information)
If you move the Excel file, the link will not be able to update as it won’t be able to find the file in the original location. If this happens, just fix the spreadsheet link location.
If you want to edit the data in Excel, you can double click on the table object on the PowerPoint slide and the Excel spreadsheet will open.
If you want to prevent others from changing the data in the Excel spreadsheet, make the Excel file a read-only file. (This will allow them to see the data in Excel when double clicking on the inserted table, but they won’t be able to save any changes to the file)
I have a Powerpoint file with many charts that I expect many different users to use with their own data. I'm trying to make this Powerpoint as easy to use as possible by writing VBA into each data source (by data source, I mean the default Excel sheet that is embedded in Powerpoint when you select "Insert" > "Chart"). My goal is to allow them to click the chart, select "Edit data," paste info from a PivotTable into the Excel window that pops up, and let the macro does the rest. The code I can write myself, but I have a different problem:
I've tried writing macros in these embedded Excel files but they do not save once they are closed (I assume they must be .xls or similar and not .xlsm). How can I get these macros to save? I've tried drag and dropping .xlsm files into Powerpoint, but it shows the actual charts on the slide and it's difficult to work with. I'd like the Excel files to be hidden from Powerpoint view and easily accessed using the "Edit data" option.
I hope this description makes sense, if not I can explain further / answer any questions.
Thanks!
Can't you just provide PowerPoint charts, and have them paste data into each chart's DataSheet in PowerPoint?
Of late, PPT does its best to convert pasted charts into PowerPoint charts (same basic engine as Excel charts but they're not Excel objects). You can get round this if you copy the chart from XL, switch to PPT and on the Home tab, click the downward pointing arrow below Paste, pick Paste Special and choose to paste as embedded Excel chart object.
You can then doubleclick the pasted object and Excel will launch for in-place editing.
Or you can right-click, choose "Macro enabled worksheet object" or whatever, and then opt to Open or Edit. Edit gives you in-place editing within the PPT window, Open launches the embedded data in a full copy of Excel.
I want to embed specific cells from a spreadsheet in a powerpoint presentation. I have seen this done before with macros (I think), but I have never done it myself. I have done a little googling and am coming up with 50 solutions. Can someone help me narrow it down.
The big gotcha here is that both of these files will be in one folder in a document library in a sharepoint site. The other gotcha, which is kind of a given, is that I want the ppt to update to latest excel data when it is opened.
This is much simpler than I thought. Here is the answer for anyone else who is attempting this:
Make sure the files are in their final folders you want them in
Open the files
Select the Cells you want to display in the ppt - Ctrl - C to copy
Edit -> Paste Special in the ppt slide you want the cells to display on
Paste as a MS Excel Worksheet Object AND select the "As a Link" checkbox on the left
Size it however you want
Save the ppt
Each time you open the ppt you select "update links" and the ppt gets the latest data from the xls
The sharepoint part is no big deal, it appears to just work like it would if the files were local
These instructions are for Office 2003, they are likely similiar for other officer versions.