Excelファイルの画像と図形を挿入する

Excelの形状は主に以下の種類に分かれています:

  • 写真
  • OLEオブジェクト
  • 直線
  • 四角形
  • 基本図形
  • ブロック矢印
  • 数式図形
  • フローチャート
  • 星とバナー
  • 吹き出し

このガイド文書では、各タイプから1つか2つの図形を選択してサンプルを作成します。これらの例を通じて、指定の形状をワークシートに挿入する方法を学ぶことができます。Aspose.Cellsを使用しています。

C#でExcelワークシートに画像を追加する

スプレッドシートに写真を追加するのは非常に簡単です。わずかなコード行だけで済みます: 単純に、Picturesコレクション(Worksheetオブジェクトでカプセル化)のAddメソッドを呼び出します。Addメソッドには以下のパラメータが必要です:

  • 左上の行インデックス、左上の行のインデックス。
  • 左上の列インデックス、左上の列のインデックス。
  • 画像ファイル名、パスを含む画像ファイルの名前。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Create directory if it is not already present.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
System.IO.Directory.CreateDirectory(dataDir);
// Instantiating a Workbook object
Workbook workbook = new Workbook();
// Adding a new worksheet to the Workbook object
int sheetIndex = workbook.Worksheets.Add();
// Obtaining the reference of the newly added worksheet by passing its sheet index
Worksheet worksheet = workbook.Worksheets[sheetIndex];
// Adding a picture at the location of a cell whose row and column indices
// Are 5 in the worksheet. It is "F6" cell
worksheet.Pictures.Add(5, 5, dataDir + "logo.jpg");
// Saving the Excel file
workbook.Save(dataDir + "output.xls");

C#でExcelワークシートにOLEオブジェクトを挿入する

Aspose.Cellsはワークシート内のOLEオブジェクトの追加、抽出、および操作をサポートしています。そのため、Aspose.Cellsには新しいOLEオブジェクトをコレクションリストに追加するために使用されるOleObjectCollectionクラスがあります。また、OleObjectという別のクラスはOLEオブジェクトを表します。いくつかの重要なメンバーがあります。

  • ImageDataプロパティはバイト配列型の画像(アイコン)データを指定します。画像はOLEオブジェクトを示すために表示されます。
  • ObjectDataプロパティはバイト配列形式のオブジェクトデータを指定します。このデータは、OLEオブジェクトアイコンをダブルクリックすると関連するプログラムに表示されます。

以下の例は、ワークシートにOLEオブジェクトを追加する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Create directory if it is not already present.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
System.IO.Directory.CreateDirectory(dataDir);
// Instantiate a new Workbook.
Workbook workbook = new Workbook();
// Get the first worksheet.
Worksheet sheet = workbook.Worksheets[0];
// Define a string variable to store the image path.
string ImageUrl = dataDir + "logo.jpg";
// Get the picture into the streams.
FileStream fs = File.OpenRead(ImageUrl);
// Define a byte array.
byte[] imageData = new Byte[fs.Length];
// Obtain the picture into the array of bytes from streams.
fs.Read(imageData, 0, imageData.Length);
// Close the stream.
fs.Close();
// Get an excel file path in a variable.
string path = dataDir + "book1.xls";
// Get the file into the streams.
fs = File.OpenRead(path);
// Define an array of bytes.
byte[] objectData = new Byte[fs.Length];
// Store the file from streams.
fs.Read(objectData, 0, objectData.Length);
// Close the stream.
fs.Close();
// Add an Ole object into the worksheet with the image
// Shown in MS Excel.
sheet.OleObjects.Add(14, 3, 200, 220, imageData);
// Set embedded ole object data.
sheet.OleObjects[0].ObjectData = objectData;
// Save the excel file
workbook.Save(dataDir + "output.out.xls");

C#でExcelワークシートに行を挿入する

線の形状はのカテゴリに属します。

Microsoft Excel(例: 2007年)

  • 線を挿入するセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、「最近使用した図形」または「線」から線を選択します

Aspose.Cells を使用

ワークシートに線を挿入するために以下の方法を使用できます。

次の例では、ワークシートに線を挿入する方法が示されています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the line to the worksheet
sheet.Shapes.AddLine(2, 0, 2, 0, 100, 300);//method 1
//sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);//method 2
//sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);//method 3
//Save.You can check your line in this way.
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C#でExcelワークシートに矢印の形の直線を挿入する

直線矢印の形状は直線のカテゴリに属します。これは直線の特別な場合です。

Microsoft Excel(例: 2007年)

  • 矢印を挿入するセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、「最近使用した図形」または「線」から直線矢印を選択します

Aspose.Cells を使用

ワークシートに直線矢印を挿入するために以下の方法を使用できます。

次の例では、ワークシートに直線矢印を挿入する方法が示されています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the line arrow to the worksheet
Shape s = sheet.Shapes.AddLine(2, 0, 2, 0, 100, 300);//method 1
//Shape s = sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);//method 2
//Shape s = sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);//method 3
//add a arrow at the line begin
s.Line.BeginArrowheadStyle = MsoArrowheadStyle.Arrow;//arrow type
s.Line.BeginArrowheadWidth = MsoArrowheadWidth.Wide;//arrow width
s.Line.BeginArrowheadLength = MsoArrowheadLength.Short;//arrow length
//add a arrow at the line end
s.Line.EndArrowheadStyle = MsoArrowheadStyle.ArrowOpen;//arrow type
s.Line.EndArrowheadWidth = MsoArrowheadWidth.Narrow;//arrow width
s.Line.EndArrowheadLength = MsoArrowheadLength.Long;//arrow length
//Save.You can check your arrow in this way.
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C#でExcelワークシートに長方形を挿入する

長方形の形状は矩形のカテゴリに属します。

Microsoft Excel(例: 2007年)

  • 長方形を挿入するセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、「最近使用した形」または「長方形」から長方形を選択します。

Aspose.Cells を使用

ワークシートに長方形を挿入するには、次のメソッドを使用できます。

次の例では、ワークシートに長方形を挿入する方法が示されています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the rectangle to the worksheet
sheet.Shapes.AddRectangle(2, 0, 2, 0, 100, 300);
//Save
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C# で Excel ワークシートに立方体を挿入する

キューブの形はBasic Shapesカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • キューブを挿入したいセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、「基本形」からキューブを選択します

Aspose.Cells を使用

ワークシートにキューブを挿入するには、次のメソッドを使用できます。

次の例では、ワークシートにキューブを挿入する方法が示されています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the cube to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.Cube, 2, 0, 2, 0, 100, 300);
//Save.You can check your cube in this way.
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C# で Excel ワークシートに吹き出し四角矢印を挿入する

コールアウト四角矢印の形はBlock Arrowsカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • コールアウト四角矢印を挿入したいセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、「ブロック矢印」からコールアウト四角矢印を選択します

Aspose.Cells を使用

ワークシートにコールアウト四角矢印を挿入するには、次のメソッドを使用できます。

次の例では、ワークシートにコールアウト四角矢印を挿入する方法が示されています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the callout quad arrow to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.QuadArrowCallout, 2, 0, 2, 0, 100, 100);
//Save
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C# で Excel ワークシートに掛け算記号を挿入する

乗算記号の形はEquation Shapesカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • 乗算記号を挿入したいセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • その後、数式図形から乗算記号を選択します

Aspose.Cells を使用

次の方法を使用してワークシートに乗算記号を挿入できます。

次の例は、ワークシートに乗算記号を挿入する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the multiplication sign to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.MathMultiply, 2, 0, 2, 0, 100, 100);
//Save.You can check your multiplication in this way.
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C#でExcelワークシートに多重ドキュメントを挿入する

多重ドキュメントの形状はフローチャートカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • 多重ドキュメントを挿入するセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • その後、フローチャートから多重ドキュメントを選択します

Aspose.Cells を使用

次の方法を使用してワークシートに多重ドキュメントを挿入できます。

次の例は、ワークシートに多重ドキュメントを挿入する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the multidocument to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.FlowChartMultidocument, 2, 0, 2, 0, 100, 100);
//Save
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C#でExcelワークシートに五角星を挿入する

五角星の形状は星とバナーカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • 五角星を挿入したいセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • その後、星とバナーから五角星を選択します

Aspose.Cells を使用

この方法は Shape オブジェクトを返します。

上記のコードを実行すると、次の結果が得られます。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the Five-pointed star to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.Star5, 2, 0, 2, 0, 100, 100);
//Save.You can check your icon in this way.
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

C#でExcelワークシートに思考バブルクラウドを挿入する

思考バブルクラウドの形状は吹き出しカテゴリに属しています。

Microsoft Excel(例: 2007年)

  • 思考バブルクラウドを挿入したいセルを選択します
  • [挿入] メニューをクリックし、[図形] をクリックします。
  • 次に、吹き出し から思考バブルクラウドを選択します。

Aspose.Cells を使用

ワークシートに思考バブルクラウドを挿入するために次の方法を使用できます。

次の例は、ワークシートに思考バブルクラウドを挿入する方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook from sample file
Workbook workbook = new Workbook();
// Access first worksheet from the collection
Worksheet sheet = workbook.Worksheets[0];
// Add the thought bubble cloud to the worksheet
sheet.Shapes.AddAutoShape(AutoShapeType.CloudCallout, 2, 0, 2, 0, 100, 100);
//Save
workbook.Save("sample.xlsx", SaveFormat.Xlsx);

上記のコードを実行すると、次の結果が得られます。

高度なトピック