how to add a new page in an excel sheet and put data in it
23 ビュー (過去 30 日間)
古いコメントを表示
Hello, I want to select two specific lines from an excel sheet and past then in a new page in an existing excel file but in a new page. My script is:
[Path] = OH_GetPath('ClusteringASS');
Mainfolder = Path.ASCIXLStruct;
%[status,sheets] = xlsfinfo(FileName);
[num txt raw] = xlsread([ Mainfolder filesep BBPFileName]);
Names = raw(1,:);
[token, remain] = strtok(FileName, '_');
[token2, remain] = strtok(remain, '_');
[token3, remain] = strtok(remain, '_');
CellID = [token '_' token2 '_' token3];
for line=2:1:size(raw,1)
if(size(raw{line,2},2) >= size(CellID,2))
if(1 == strcmp(CellID, raw{line,2}(1:size(CellID,2))))
Values = raw(line, :);
end
end
end
% Connect to Excel
Excel = actxserver('excel.application');
% Get Workbook object
WB = Excel.Workbooks.Open(fullfile(pwd, [FileName '.xlsx']), 0, false);
% Get Worksheets object
WS = WB.Worksheets;
% Add after the last sheet
WS.Add([], WS.Item(WS.Count));
WS.Item(WS.Count).Name = 'BBP';
% Save
WB.Save();
% Quit Excel
Excel.Quit();
xlswrite([Mainfolder filesep FileName],Names ,'BBP')
xlswrite([Mainfolder filesep FileName],Values ,'BBP')
The new page is named 'BBP' and the data are Names and Values. But it will create a new excel file with the same name and my data but not use the existing excel file
0 件のコメント
回答 (1 件)
Rutuja Shirali
2015 年 9 月 30 日
Hi Christophe,
I tried running your code and it runs fine and creates a new excel sheet in the same workbook. I noticed in your code that while opening the Excel workbook, you open it from "pwd" please make sure when you are using "xlswrite" you are in the same directory as the workbook is or specify the entire path to the workbook (in this case pwd), else it will create a new workbook with the filename and sheetname specified and write to it.
I hope this helps!
-Rutuja
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Spreadsheets についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!