Excelのオートメーションサーバーを使用して任意の複数のシートを1つのPDFにエクスポートするにはどうすればよいですか?
古いコメントを表示
任意の複数のシートを1つのPDFに書き出すにはどうすれば良いでしょうか。
hExcel = actxserver('Excel.Application');
hWorkbook = hExcel.Workbooks.Open(sprintf('%s',filename));
% (1)シートを1枚しか選択できない
hWorksheet = hWorkbook.Sheets.Item(1);
hWorksheet.ExportAsFixedFormat('xlTypePDF',output_filename1);
% (2)不要なシートまで書き出される
hWorkbook.ExportAsFixedFormat('xlTypePDF',output_filename2);
複数のシートを選択したり、不要なシートを削除してから書き出そうとしましたがうまくいきませんでした。
% 下記のように記述するとエラーになる
hWorksheet = hWorkbook.Sheets.Item(1:2);
% 下記のように記述しても消したつもりのシートも書き出される
Sheets = hExcel.ActiveWorkBook.Sheets;
invoke( get(Sheets,'Item',1),'Delete');
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Excel Integration についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!