C＃/ VB.NET：Excelを画像に変換する方法

日常業務では、セル範囲をPowerPointプレゼンテーションに添付したり、スプレッドシートデータを電子メールで安全に送信したりするなど、Excelを画像に変換する必要があるという状況に遭遇することが珍しくありません。この記事では、Spire.XLS for .NETを使用して、次の2つの側面からプログラムでExcelを画像に変換する方法を紹介します。

**Excelワークシート全体を画像に変換する**
**特定のセル範囲を画像に変換する**

## Spire.XLS for.NETをインストールします

まず、Spire.XLS for.NETパッケージに含まれているDLLファイルを.NETプロジェクトの参照として追加する必要があります。DLLファイルは、このリンクからダウンロードするか、NuGetを介してインストールできます。

**PM> Install-Package Spire.XLS**

## Excelワークシート全体を画像に変換する

以下は、Excelワークシート全体を画像に変換する手順です。

**Workbook**インスタンスを作成します。
**Workbook.LoadFromFile()** メソッドを使用してExcelサンプルドキュメントをロードします。
**Workbook.Worksheets []** プロパティを使用して、ドキュメントの特定のワークシートを取得します。
**Worksheet.SaveToImage()** メソッドを使用して、ワークシートを画像として保存します。

**C#**
```
using Spire.Xls;
namespace Xls2Image
{
    class Program
    {
        static void Main(string[] args)
        {
            //Workbook インスタンスを作成する
            Workbook workbook = new Workbook();

            //Excel サンプルドキュメントをロードする
            workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.xlsx");

            //最初のワークシートを取得する
            Worksheet sheet = workbook.Worksheets[0];

            //ワークシートを画像として保存する
            sheet.SaveToImage("XlsToImage.jpg");
        }
    }
}
```
**VB.NET**
```
Imports Spire.Xls
Namespace Xls2Image
    Class Program
        Shared  Sub Main(ByVal args() As String)
            'Workbook インスタンスを作成する
            Dim workbook As Workbook =  New Workbook() 
 
            'Excel サンプルドキュメントをロードする
            workbook.LoadFromFile("C:\Users\Administrator\Desktop\sample.xlsx")
 
            '最初のワークシートを取得する
            Dim sheet As Worksheet =  workbook.Worksheets(0) 
 
            'ワークシートを画像として保存する
            sheet.SaveToImage("XlsToImage.jpg")
        End Sub
    End Class
End Namespace
``` 
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/b76c6aad-9486-847b-af41-5b54540b2ce9.png)


## 特定のセル範囲を画像に変換する

ワークシート全体を画像に変換することに加えて、Spire.XLS for .NETは、ワークシートの特定のセル範囲を画像に変換することもサポートしています。 詳細な手順を以下に示します。

**Workbook**インスタンスを作成します。
**Workbook.LoadFromFile()** メソッドを使用してExcelサンプルドキュメントをロードします。
**Workbook.Worksheets []** プロパティを使用して、ドキュメントの特定のワークシートを取得します。
セル範囲を指定し、**Worksheet.ToImage()** メソッドを使用してImageオブジェクトとして保存してから、**Image.Save()** メソッドを使用してオブジェクトを特定の画像形式で保存します。

**C#**
```
using Spire.Xls;
using System.Drawing.Imaging;

namespace SpecificCellsToImage
{

    class Program
    {
        static void Main(string[] args)
        {
            //Workbook インスタンスを作成する
            Workbook workbook = new Workbook();

            //Excel サンプルをロードする
            workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.xlsx");

            //最初のワークシートを取得する
            Worksheet sheet = workbook.Worksheets[0];

            //セル範囲を指定して、特定の画像形式で保存する
            sheet.ToImage(1, 1, 11, 3).Save("CellRangeToImage.png", ImageFormat.Png);
        }
    }
}
```
**VB.NET**
```
Imports Spire.Xls
Namespace Xls2Image
    Class Program
        Shared  Sub Main(ByVal args() As String)
            'Workbook インスタンスを作成する
            Dim workbook As Workbook =  New Workbook() 
 
            'Excel サンプルドキュメントをロードする
            workbook.LoadFromFile("C:\Users\Administrator\Desktop\sample.xlsx")
 
            '最初のワークシートを取得する
            Dim sheet As Worksheet =  workbook.Worksheets(0) 
 
            'ワークシートを画像として保存する
            sheet.SaveToImage("XlsToImage.jpg")
        End Sub
    End Class
End Namespace
```
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/aa9ab539-810e-55f9-9495-daa2b66a9fd1.png)


## 一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除する場合、または機能制限を取り除く場合は、30日間有効な一時ライセンスについて[営業担当者](mailto:sales@e-iceblue.com)にお問い合わせください。