how to close an excel file

65 visualizzazioni (ultimi 30 giorni)
pradeep kumar
pradeep kumar il 21 Nov 2014
Commentato: Image Analyst il 30 Mar 2023
Hellow everyone . i am using
winopen('myfile.xlsx')
to open an excel file , after doing some modification, i want to close the excel file in order to overwrite the existing data by
xlswrite('myfile.xlsx', my_modified_data )
but sometimes i forgot to close the file manually in between and MATLAB generates an error . Is there any way to automatically close the excel file(by some command like winclose or something like that) before writing into it . Thank You all .

Risposta accettata

Image Analyst
Image Analyst il 21 Nov 2014
Yes. You can use actxGetRunningServer() to connect to Excel and shut it down.
  9 Commenti
Ihaveaquest
Ihaveaquest il 30 Mar 2023
works for powerpoint as well - theres not much info online for how to with powerpoint
import mlreportgen.ppt.*
taskToLookFor = 'Powerpnt.exe';
% Now make up the command line with the proper argument
% that will find only the process we are looking for.
commandLine = sprintf('tasklist /FI "IMAGENAME eq %s"', taskToLookFor)
% Now execute that command line and accept the result into "result".
[status result] = system(commandLine)
% Look for our program's name in the result variable.
itIsRunning = strfind(lower(result), lower(taskToLookFor))
%closes powerpoints if they are open so system does not crasah when it
%tries to open a new PP
if itIsRunning
if exist('Plotted Circulator', 'file')==0
system('taskkill /F /IM POWERPNT.EXE');
end
else
end
Image Analyst
Image Analyst il 30 Mar 2023
@Ihaveaquest if Excel is open with several sheets, you can use
Excel = actxGetRunningServer('Excel.Application');
to get a handle to the Excel server, then use Excel to save the active sheet and close it.
Excel.ActiveWorkbook.Save;
Excel.ActiveWorkbook.Close(false); % The 'false' argument prevents the popup window from showing, forcing the closure without user intervention.

Accedi per commentare.

Più risposte (1)

Artem Smirnov
Artem Smirnov il 19 Gen 2017
Try this:
close all
  1 Commento
Image Analyst
Image Analyst il 19 Gen 2017
And when/if you do, you'll see that close does not shutdown other processes and applications like Excel.

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by