PDFをExcelに変換する .NET

概要

この記事では、C#を使用してPDFをExcel形式に変換する方法について説明します。以下のトピックをカバーしています。

次のコードスニペットは、Aspose.PDF.Drawingライブラリでも動作します。

形式: XLS

形式: XLSX

形式: Excel

形式: 単一Excelワークシート

形式: XMLスプレッドシート2003形式

形式: CSV

形式: ODS

C# PDFからExcelへの変換

Aspose.PDF for .NETは、PDFファイルをExcel 2007、CSV、SpreadsheetML形式に変換する機能をサポートしています。

Aspose.PDF for .NETはPDF操作コンポーネントであり、PDFファイルをExcelワークブック(XLSXファイル)にレンダリングする機能を導入しました。この変換中に、PDFファイルの個々のページがExcelワークシートに変換されます。

PDFファイルをXLSX形式に変換するために、Aspose.PDFにはExcelSaveOptionsというクラスがあります。ExcelSaveOptionsクラスのオブジェクトは、Document.Save(..)コンストラクタの第二引数として渡されます。

次のコードスニペットは、Aspose.PDF for .NETを使用してPDFファイルをXLSまたはXLSX形式に変換するプロセスを示しています。

手順: C#でPDFをXLSに変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. ExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡して、.xls拡張子を指定してXLS形式で保存します。

手順: C#でPDFをXLSXに変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. ExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡して、.xlsx拡張子を指定してXLSX形式で保存します。
  // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
 private static void ConvertPDFtoExcel()
 {
     // The path to the documents directory
     var dataDir = RunExamples.GetDataDir_AsposePdf();

     // Open PDF document
     using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
     {
         // Instantiate ExcelSaveOptions object
         var saveOptions = new Aspose.Pdf.ExcelSaveOptions();

         // Save the file in XLSX format
         document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
     }
 }

コントロール列を持つPDFをXLSに変換

PDFをXLS形式に変換する際、出力ファイルの最初の列に空白の列が追加されます。この列を制御するために、ExcelSaveOptionsクラスのInsertBlankColumnAtFirstオプションが使用されます。デフォルト値はfalseであり、空白の列は挿入されません。

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoExcelAdvanced_InsertBlankColumnAtFirst()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            InsertBlankColumnAtFirst = false
        };

        // Save the file in XLSX format
        document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
    }
}

PDFを単一Excelワークシートに変換

多くのページを持つPDFファイルをXLSにエクスポートする場合、各ページはExcelファイルの異なるシートにエクスポートされます。これは、MinimizeTheNumberOfWorksheetsプロパティがデフォルトでfalseに設定されているためです。出力Excelファイルの1つのシートにすべてのページをエクスポートするには、MinimizeTheNumberOfWorksheetsプロパティをtrueに設定します。

手順: C#でPDFをXLSまたはXLSXの単一ワークシートに変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. MinimizeTheNumberOfWorksheets = trueを指定してExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡して、単一ワークシートを持つXLSまたはXLSX形式で保存します。
 // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoExcelAdvanced_MinimizeTheNumberOfWorksheets()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            MinimizeTheNumberOfWorksheets = true
        };

        // Save the file in XLSX format
        document.Save(dataDir + "PDFToXLS_out.xlsx", saveOptions);
    }
}

他のスプレッドシート形式に変換

XMLスプレッドシート2003形式に変換

バージョン20.8以降、Aspose.PDFはデフォルトでMicrosoft Excel Open XMLスプレッドシート2007ファイル形式を使用してデータを保存します。PDFファイルをXMLスプレッドシート2003形式に変換するために、Aspose.PDFにはExcelSaveOptionsというクラスがあり、Formatがあります。ExcelSaveOptionsクラスのオブジェクトは、Document.Save(..)メソッドの第二引数として渡されます。

次のコードスニペットは、PDFファイルをXLS Excel 2003 XML形式に変換するプロセスを示しています。

手順: C#でPDFをExcel 2003 XML形式に変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. Format = ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003を指定してExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡してXLS - Excel 2003 XML形式で保存します。
  // For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
 private static void ConvertPDFtoExcelAdvanced_SaveXLS2003()
 {
     // The path to the documents directory
     var dataDir = RunExamples.GetDataDir_AsposePdf();

     // Open PDF document
     using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
     {
         // Instantiate ExcelSaveOptions object
         var saveOptions = new Aspose.Pdf.ExcelSaveOptions
         {
             Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
         };

         // Save the file in XLS format
         document.Save(dataDir + "PDFToXLS_out.xls", saveOptions);
     }
 }

CSVに変換

CSV形式への変換は、上記と同様に行われます。必要なことは、適切な形式を設定することだけです。

手順: C#でPDFをCSVに変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. Format = ExcelSaveOptions.ExcelFormat.CSVを指定してExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡してCSV形式で保存します。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToCSV()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.CSV
        };
        
        // Save the file in CSV format
        document.Save(dataDir + "PDFToXLS_out.csv", saveOptions);
    }
}

ODSに変換

手順: C#でPDFをODSに変換する

  1. ソースPDF文書を使用してDocumentオブジェクトのインスタンスを作成します。
  2. Format = ExcelSaveOptions.ExcelFormat.ODSを指定してExcelSaveOptionsのインスタンスを作成します。
  3. Document.Save()メソッドを呼び出し、ExcelSaveOptionsを渡してODS形式で保存します。

ODS形式への変換は、他のすべての形式と同様に行われます。

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToODS()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf();
    
    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Instantiate ExcelSaveOptions object
        var saveOptions = new Aspose.Pdf.ExcelSaveOptions
        {
            Format = Aspose.Pdf.ExcelSaveOptions.ExcelFormat.ODS
        };

        // Save the file in ODS format
        document.Save(dataDir + "PDFToODS_out.ods", saveOptions);
    }
}

参照

この記事では、これらのトピックもカバーしています。コードは上記と同じです。

形式: Excel

形式: XLS

形式: XLSX

形式: CSV

形式: ODS