Actxserver unable to locate Excel workbook
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Bob Thompson
le 28 Juil 2016
Commenté : Bob Thompson
le 28 Juil 2016
I am having issues getting the ActiveX application to open an existing Excel doc for editing.
My current code looks like:
file_name = 'Excel_Book.xlsx';
xl = actxserver('Excel.Application');
xlb = xl.Workbooks.Open(file_name);
This returns the error:
Error
Invoke Error, Dispatch Exception:
Source Microsoft Excel
Description: 'Excel_Book.xlsx' could not be found
I know that the file exists, as I can read it with
xlsread(file_name)
I have even changed the MATLAB directory to be seeing the folder with the Excel_Book file in it, and yet the ActiveX refuses to read the document.
Similar problems were encountered using:
xlb = xl.Workbooks.Item(file_name);
or
xlb = xl.get('Workbooks',file_name);
0 commentaires
Réponse acceptée
Walter Roberson
le 28 Juil 2016
It would be safer to use fullfile() to create a fully-qualified file name to request to open.
3 commentaires
Walter Roberson
le 28 Juil 2016
[filename, filedir] = uigetfile();
complete_file_name = fullfile(filedir, filename);
Plus de réponses (1)
Shameer Parmar
le 28 Juil 2016
Try replacing the line and check..
xlb = xl.Workbooks.Open(file_name);
with
xlb = xl.Workbooks.Open('fullpath\file_name along with the extension');
0 commentaires
Voir également
Catégories
En savoir plus sur ActiveX dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!