この記事では、C# を使用して Excel で ActiveX コントロールを使用する 方法について説明します。開発用に IDE を設定するための詳細、プロセスを定義する手順の一覧、C# を使用して Excel Active X コントロールを追加する ためのサンプル コードが含まれています。ActiveX コントロールを追加し、それにアクセスしてコントロール値を更新または読み取る方法を学習します。
C# を使用して Excel に ActiveX コントロールを追加する手順
- ActiveX コントロールを操作するために IDE を Aspose.Cells for .NET を使用するように設定します
- ActiveXコントロールを追加するためのWorkbookクラスを使用してExcelファイルを作成します
- シートから図形コレクションにアクセスし、AddActiveXControl() メソッドを呼び出してコントロールを追加します。
- ActiveXコントロールにアクセスし、リンクされたセルを送信する
- コントロールの特定のプロパティを設定するには、ActiveXコントロールを型キャストして値を設定します。
- コントロールを更新またはアクセスするには、コントロールの種類を確認し、必要な値を更新します。
これらの手順は、C# を使用して Excel で ActiveX コントロールを使用する方法 をまとめたものです。プロセスを開始するには、ワークブックのシートから図形コレクションにアクセスし、ShapeCollection クラスの AddActiveXControl() メソッドを呼び出します。ActiveX コントロールのコントロール タイプ、ターゲット セル、およびサイズを指定し、コントロールをセルにリンクして値を操作します。
C# を使用して ActiveX コマンド ボタンを追加するコード
using Aspose.Cells; | |
using Aspose.Cells.Drawing; | |
using Aspose.Cells.Drawing.ActiveXControls; | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
new License().SetLicense("License.lic"); | |
// Create workbook object | |
Workbook wb = new Workbook(); | |
// Access first worksheet | |
Worksheet sheet = wb.Worksheets[0]; | |
// Add Command Button ActiveX Control inside the Shape Collection | |
Shape s = sheet.Shapes.AddActiveXControl(ControlType.CommandButton, 4, 0, 4, 0, 100, 30); | |
// Access the ActiveX control object and set its linked cell property | |
ActiveXControl c = s.ActiveXControl; | |
c.LinkedCell = "A1"; | |
// Add Toggle Button ActiveX Control inside the Shape Collection | |
Shape s1 = sheet.Shapes.AddActiveXControl(ControlType.ComboBox, 16, 0, 4, 0, 100, 30); | |
// Access the ActiveX control object and set its linked cell property | |
ActiveXControl c1 = s1.ActiveXControl; | |
c1.LinkedCell = "A4"; | |
ComboBoxActiveXControl comboControl = (ComboBoxActiveXControl)c1; | |
comboControl.Value = "A sample value for the ComboBox"; | |
// Save the workbook | |
wb.Save("Combo box with original value.xlsx"); | |
foreach (var shape in sheet.Shapes) | |
{ | |
// Access specific ActiveX Control and set its value | |
if (shape.ActiveXControl != null) | |
{ | |
// Access Shape ActiveX Control | |
ActiveXControl control = shape.ActiveXControl; | |
// Check for the target type | |
if (control.Type == ControlType.ComboBox) | |
{ | |
// Type cast ActiveXControl into ComboBoxActiveXControl and change its value | |
ComboBoxActiveXControl comboBoxActiveX = (ComboBoxActiveXControl)control; | |
comboBoxActiveX.Value = "A new value for the ComboBox"; | |
} | |
} | |
} | |
// Save the workbook in xlsx format | |
wb.Save("AddActiveXControls_out.xlsx", SaveFormat.Xlsx); | |
} | |
} |
このコードは、Excel シートに C# を使用して コンボ ボックス ActiveX コントロール を追加する方法を示しています。AddActiveXControl() メソッドは、新しく追加された図形への参照を返します。この参照を使用して、リンクされたセルや、フォント、色、影、テキスト配置などのその他のプロパティを設定できます。同様に、図形を特定のコントロールに型キャストすると、コントロールをカスタマイズするためのさまざまなプロパティが得られます。
この記事では、Excel ファイルに ActiveX コントロールを追加してアクセスする方法について説明しました。Excel ファイルに画像を追加する方法については、C# を使用して Excel セルに画像を追加する方法 の記事を参照してください。