使用QAxObject將原來的Excel數據轉換爲PDF

VS2015+QT5.3+Excel2006

項目中原來有使用QT的QAxObject使用OfficeExcel的組件導出Excel報告文件的功能,由於項目要求導出PDF功能比較急,如果使用其他樣式需要重新組織格式等,花費較多時間,因此考慮將原來的Excel報告直接導出PDF,

1搜索QT導出PDF的資料,遇到幾個WORD導出PDF,遇到ExportAsFixedFormat這個函數,按照網頁上的參數試了一下不行,坑,可能是word導出到pdf跟Excel不一樣, 

2 經過仔細搜索,找到ExportAsFixedFormat(Excel)函數的參數說明,根據參數實現
 


axCurWorkBook->querySubObject("ExportAsFixedFormat(QVariant, QVariant)",
            0, pdfpath);

其中axCurWorkBook是最終導出成Excel的QAxObject對象,pdfpath是保存的PDF文件的路徑

0是函數的指定的PDF格式.

函數具體參見:https://docs.microsoft.com/zh-cn/office/vba/api/excel.workbook.exportasfixedformat

PS:日期:2020-4-27

3 由於之前導出的PDF格式按照默認紙張導出 很多列都分開了,因此測試Excel的功能,發現可以設置內容爲一頁,然後再導出到Excel就可以了,方法是:


		axResultSheet->setProperty("FitToPagesWide", 1);
		axResultSheet->setProperty("FitToPagesTall", 1);

我是通過錄制宏分析,然後在官網網址查看說明得到的.https://docs.microsoft.com/zh-cn/office/vba/api/excel.pagesetup.fittopageswide

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章