Rename titles of sheets for xlswrite
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I need a bit of help to rename my tabels for xlswrite. I try to use the below code which work as long as the title names are different. However, when I have to identical titels like 'table1' in the example it won't work. How can I search the title strings and if two are identical give them an additional number so my Title array becomes Title={'table1 (1)'; 'table2'; 'table3'; 'table4'; 'table1 (2)';}.
Here is my code
Title={'table1'; 'table2'; 'table3'; 'table4'; 'table1';}
[FileNameBodeWrite,PathNameBodeWrite] = uiputfile({'*.xls'},'Save As', [ '.xls']);
filename=[PathNameBodeWrite FileNameBodeWrite];
t=1/numel(Table);
for ii = 1:numel(Table)
sheet=ii;
xlswrite(filename,Table{ii},sheet,'A1');
e = actxserver('Excel.Application'); % # open Activex server
ewb = e.Workbooks.Open(filename); % # open file (enter full path!)
ewb.Worksheets.Item(ii).Name = Title{ii,1} % # rename sheets
ewb.Save % # save to the same file
ewb.Close(false)
e.Quit
end
0 commentaires
Réponses (1)
Walter Roberson
le 18 Sep 2017
xlsinfo() can tell you the current names of the sheets.
0 commentaires
Voir également
Catégories
En savoir plus sur Spreadsheets dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!