Teisendage Exceli fail PDF-iks, kasutades Excelit saidilt .NET
Töökeskkond
- Visuaalne stuudio
-
- Visual Studio 2022
- .NET
-
- .NET 6.0
- Windows
-
- Windows 11
- Excel
-
- Microsoft 365
Eeltingimused
- Windows
-
- Üks versioonidest
- Excel
-
- Üks versioonidest
Exceli failist PDF-failiks teisendamise juhised
See programm kasutab Exceli manipuleerimiseks .net-programmist Microsoft.Office.Interop.Excel
COM-i kaudu ja avatud Exceli faili väljastamiseks PDF-failina.
Seetõttu peab töötamiseks olema Windowsi installitud Excel. COM on Windowsi mehhanism, nii et see ei tööta Macides.
Kui loote projekti Visual Studios, võib see olla kõik, mis töötab Windowsi töölaual. Sel juhul loome selle konsoolirakendusena.
Pärast projekti loomist sirvige teeki, et leida teavet Exceli kasutamise kohta. Siin esitatud meetod on ehitatud viisil, mis sõltub programmi vaatamise hõlbustamiseks installitud Exceli versioonist. Kui soovite seda käivitada Exceli versioonist sõltumatult, muutke seda vastavalt allpool lingitud meetodile. Nii ehitame programme, mida levitame.
Paremklõpsake valikut Sõltuvused ja valige Lisa COM-viide.
Kui arenduskeskkonda on installitud Excel, tippige paremas ülanurgas Excel
olevale otsinguväljale "", nii et kontrollige Microsoft Excel XX.0 Object Library
seda ja klõpsake nuppu "OK".
Kuvatav versioon sõltub installitud Exceli versioonist.
Teil on importimiseks valmis Exceli fail. Viis, kuidas seda PDF-i väljastatakse, on sama, mis siis, kui väljastate käsitsi PDF-i Excelis, nii et palun kontrollige seda enne rakendusena lisamist.
Sisestage järgmine kood kohta, kus soovite seda töödelda.
// 実行プログラムの場所にある Excel ファイル
var folderPath = Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule?.FileName) ?? "";
var excelFilePath = Path.Combine(folderPath, "Sample.xlsx");
Microsoft.Office.Interop.Excel.Application? excel = null;
Microsoft.Office.Interop.Excel.Workbooks? books = null;
Microsoft.Office.Interop.Excel.Workbook? book = null;
Microsoft.Office.Interop.Excel.Sheets? sheets = null;
try
{
// Excel アプリケーション生成
excel = new Microsoft.Office.Interop.Excel.Application()
{
DisplayAlerts = false, // アラート非表示
Visible = false, // Excel 非表示
};
// ワークブック一覧を参照
books = excel.Workbooks;
// Excel ファイルを開く
book = books.Open(excelFilePath);
// シート一覧参照
sheets = book.Worksheets;
// 全シートを選択
sheets.Select();
// Excel のデータを PDF ファイルとして保存
// Type : xlTypePDF=PDF, xlTypeXPS=XPS
// Filename : 出力ファイル名
// Quality : xlQualityStandard=標準品質, xlqualityminimum=最小限の品質
book.ExportAsFixedFormat(
Type: Microsoft.Office.Interop.Excel.XlFixedFormatType.xlTypePDF,
Filename: Path.Combine(folderPath, "Sample.pdf"),
Quality: Microsoft.Office.Interop.Excel.XlFixedFormatQuality.xlQualityStandard);
Console.WriteLine("PDF 出力に成功しました。");
}
catch (Exception ex)
{
Console.WriteLine("PDF 出力に失敗しました。");
Console.WriteLine(ex.ToString());
}
finally
{
// Excel を終了させる
if (book != null) book.Close(SaveChanges: false);
if (excel != null) excel.Quit();
// 使用した Excel リソースは全て開放する
if (sheets != null) System.Runtime.InteropServices.Marshal.ReleaseComObject(sheets);
if (book != null) System.Runtime.InteropServices.Marshal.ReleaseComObject(book);
if (books != null) System.Runtime.InteropServices.Marshal.ReleaseComObject(books);
if (excel != null) System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
}
Asi on selles, et meetodil on juba ekspordifunktsioon, nii et Workbook.ExportAsFixedFormat
peate seda lihtsalt helistama.
Käivitage see, et näha, kas PDF-fail on väljastatud.