Excel のスプレッドシートは、データを整理し計算するために使用されるグリッドベースの拡張可能なファイルです。人々はビジネスや個人の必要に応じてスプレッドシートを作成することがよくあります。Excel のスプレッドシートにデータを書き込むためには、プログラミング手法を使用することをお勧めします。これにより時間を節約でき、誤りを避けることができます。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによって Excel 文書を作成し、Excel のシートにデータを書き込む方法を紹介します。 セルにテキストまたは数値を書き込む ワークシートに配列を書き込む ワークシートにデータテーブルを書き込む Spire.XLS for .NET をインストールします まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。 PM> Install-Package Spire.XLS セルにテキストまたは数値を書き込む ワークシート内の特定のセルには、Worksheet.Range[int row, int column] プロパティでアクセスできます。次に、XlsRange.Value または XlsRange.Value2 プロパティを使用して、テキスト値または数値をセルに追加できます。詳細な手順は次のとおりです。 Workbook オブジェクトを作成します。 Workbook.Worksheets[] プロパティを使用して最初のシートを取得します。 Workhseet.Range[] プロパティを使用して特定のセルを取得します。 XlsRange.Value または XlsRange.Value2 メソッド を使用して、指定したセルにテキスト値または数値を追加します。 Workbook.SaveToFile() メソッドを使用してワークブックを Excel ファイルに保存します。 C# VB.NET using Spire.Xls; namespace WriteDataToCells { class Program { static void Main(string[] args) { //Workbookオブジェクトを作成する Workbook workbook = new Workbook(); //最初のシートを取得する Worksheet worksheet = workbook.Worksheets[0]; //指定したセルにデータを書き込む worksheet.Range[1, 1].Value = "名前"; worksheet.Range[1, 2].Value = "年齢"; worksheet.Range[1, 3].Value = "部門"; worksheet.Range[1, 4].Value = "雇用日"; worksheet.Range[2, 1].Value = "中村"; worksheet.Range[2, 2].Value2 = 29; worksheet.Range[2, 3].Value = "研究部門"; worksheet.Range[2, 4].Value = "2019-07-01"; worksheet.Range[3, 1].Value = "田中"; worksheet.Range[3, 2].Value2 = 31; worksheet.Range[3, 3].Value = "生産部門"; worksheet.Range[3, 4].Value = "2015-04-27"; //列幅を自動調整する worksheet.AllocatedRange.AutoFitColumns(); //最初の行にスタイルを適用する CellStyle style = workbook.Styles.Add("newStyle"); style.Font.IsBold = true; worksheet.Range[1, 1, 1, 4].Style = style; //ファイルに保存する workbook.SaveToFile("WriteToCells.xlsx", ExcelVersion.Version2016); } } } Imports Spire.Xls Namespace WriteDataToCells Class Program Shared Sub Main(ByVal args() As String) 'Workbookオブジェクトを作成する Dim workbook As Workbook = New Workbook() '最初のシートを取得する Dim worksheet As Worksheet = workbook.Worksheets(0) '指定したセルにデータを書き込む worksheet.Range(1, 1).Value = "名前" worksheet.Range(1, 2).Value = "年齢" worksheet.Range(1, 3).Value = "部門" worksheet.Range(1, 4).Value = "雇用日" worksheet.Range(2, 1).Value = "中村" worksheet.Range(2, 2).Value2 = 29 worksheet.Range(2, 3).Value = "研究部門" worksheet.Range(2, 4).Value = "2019-07-01" worksheet.Range(3, 1).Value = "田中" worksheet.Range(3, 2).Value2 = 31 worksheet.Range(3, 3).Value = "生産部門" worksheet.Range(3, 4).Value = "2015-04-27" '列幅を自動調整する worksheet.AllocatedRange.AutoFitColumns() '最初の行にスタイルを適用する Dim style As CellStyle = workbook.Styles.Add("newStyle") style.Font.IsBold = True worksheet.Range(1, 1, 1, 4).Style = style 'ファイルに保存する workbook.SaveToFile("WriteToCells.xlsx", ExcelVersion.Version2016) End Sub End Class End Namespace ワークシートに配列を書き込む Spire.XLS for .NET には Worksheet.InsertArrary() メソッドが用意されており、プログラマはワークシートの指定されたセル範囲に1次元配列または2次元配列を書き込むことができます。ワークシートに配列を書き込む手順は次のとおりです。 Workbook オブジェクトを作成します。 Workbook.Worksheets[] プロパティを使用して最初のシートを取得します。 1次元配列と2次元配列を作成します。 Worksheet.InsertArray() メソッドを使用して配列をシートに挿入します。 Workbook.SaveToFile() メソッドを使用してワークブックを Excel ファイルに保存します。 C# VB.NET using Spire.Xls; namespace WriteArraysToWorksheet { class Program { static void Main(string[] args) { //Workbookオブジェクトを作成する Workbook workbook = new Workbook(); //最初のシートを取得する Worksheet worksheet = workbook.Worksheets[0]; //1次元配列を作成する string[] oneDimensionalArray = new string[] { "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日" }; //シートの最初の行に配列を書き込む worksheet.InsertArray(oneDimensionalArray, 1, 1, false); //2次元配列を作成する string[,] twoDimensionalArray = new string[,]{ {"名前", "年齢", "性別", "部門", "電話番号"}, {"中村", "25", "男性", "研究部門","654214"}, {"田中", "24", "女性", "生産部門","624847"}, {"小林", "26", "女性", "営業部門","624758"} }; //セルA 3からシートに配列を書き込む worksheet.InsertArray(twoDimensionalArray, 3, 1); //特定のセル範囲の列幅を自動的に調整する worksheet.AllocatedRange.AutoFitColumns(); //1行目と3行目にスタイルを適用する CellStyle style = workbook.Styles.Add("newStyle"); style.Font.IsBold = true; worksheet.Range[1, 1, 1, 6].Style = style; worksheet.Range[3, 1, 3, 6].Style = style; //ファイルに保存する workbook.SaveToFile("InsertArrays.xlsx", ExcelVersion.Version2016); } } } Imports Spire.Xls Namespace WriteArraysToWorksheet Class Program Shared Sub Main(ByVal args() As String) 'Workbookオブジェクトを作成する Dim workbook As Workbook = New Workbook() '最初のシートを取得する Dim worksheet As Worksheet = workbook.Worksheets(0) '1次元配列を作成する Dim oneDimensionalArray() As String = New String() { "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"} 'シートの最初の行に配列を書き込む worksheet.InsertArray(oneDimensionalArray, 1, 1, False) '2次元配列を作成する Dim twoDimensionalArray(,) As String = New String(,) { {"名前", "年齢", "性別", "部門", "電話番号"}, {"中村", "25", "男性", "研究部門","654214"}, {"田中", "24", "女性", "生産部門","624847"}, {"小林", "26", "女性", "営業部門","624758" } } 'セルA 3からシートに配列を書き込む worksheet.InsertArray(twoDimensionalArray, 3, 1) '特定のセル範囲の列幅を自動的に調整する worksheet.AllocatedRange.AutoFitColumns() '1行目と3行目にスタイルを適用する Dim style As CellStyle = workbook.Styles.Add("newStyle") style.Font.IsBold = True worksheet.Range(1, 1, 1, 6).Style = style worksheet.Range(3, 1, 3, 6).Style = style 'ファイルに保存する workbook.SaveToFile("InsertArrays.xlsx", ExcelVersion.Version2016) End Sub End Class End Namespace ワークシートにデータテーブルを書き込む DataTable からシートにデータをインポートするには、Worksheet.InsertDataTable() メソッドを使用します。詳細な手順は次のとおりです。 Workbook オブジェクトを作成します。 Workbook.Worksheets[] プロパティを使用して、最初のシート取得します。 ランダム データを含む DataTable を作成します。 Worksheet.InsertDataTable() メソッドを使用して、シートの指定された位置に DataTable を書き込みます。 Workbook.SaveToFile() メソッドを使用してワークブックを Excel ファイルに保存します。 C# VB.NET using System; using System.Data; using Spire.Xls; namespace WriteDataTableToWorksheet { class Program { static void Main(string[] args) { //Workbookオブジェクトを作成する Workbook workbook = new Workbook(); //最初のシートを取得する Worksheet worksheet = workbook.Worksheets[0]; //DataTableオブジェクトを作成する DataTable dataTable = new DataTable(); dataTable.Columns.Add("スキュー", typeof(Int32)); dataTable.Columns.Add("製品", typeof(String)); dataTable.Columns.Add("価格", typeof(String)); //行を作成してデータを追加する DataRow dr = dataTable.NewRow(); dr[0] = 512900512; dr[1] = "ワイヤレスマウス"; dr[2] = "$85"; dataTable.Rows.Add(dr); dr = dataTable.NewRow(); dr[0] = 512900637; dr[1] = "キーボード"; dr[2] = "$99"; dataTable.Rows.Add(dr); dr = dataTable.NewRow(); dr[0] = 512901829; dr[1] = "Bluetoothスピーカー"; dr[2] = "$125"; dataTable.Rows.Add(dr); dr = dataTable.NewRow(); dr[0] = 512900386; dr[1] = "USBメモリ"; dr[2] = "$89"; dataTable.Rows.Add(dr); //シートにデータテーブルを書き込む worksheet.InsertDataTable(dataTable, true, 1, 1, true); //特定のセル範囲の列幅を自動的に調整する worksheet.AllocatedRange.AutoFitColumns(); //1行目と3行目にスタイルを適用する CellStyle style = workbook.Styles.Add("newStyle"); style.Font.IsBold = true; worksheet.Range[1, 1, 1, 3].Style = style; //ファイルに保存する workbook.SaveToFile("InsertDataTable.xlsx", ExcelVersion.Version2016); } } } Imports System Imports System.Data Imports Spire.Xls Namespace WriteDataTableToWorksheet Class Program Shared Sub Main(ByVal args() As String) 'Workbookオブジェクトを作成する Dim workbook As Workbook = New Workbook() '最初のシートを取得する Dim worksheet As Worksheet = workbook.Worksheets(0) 'DataTableオブジェクトを作成する Dim dataTable As DataTable = New DataTable() dataTable.Columns.Add("スキュー", Type.GetType(Int32)) dataTable.Columns.Add("製品", Type.GetType(String)) dataTable.Columns.Add("価格", Type.GetType(String)) '行を作成してデータを追加する Dim dr As DataRow = dataTable.NewRow() dr(0) = 512900512 dr(1) = "ワイヤレスマウス" dr(2) = "$85" dataTable.Rows.Add(dr) dr = dataTable.NewRow() dr(0) = 512900637 dr(1) = "キーボード" dr(2) = "$99" dataTable.Rows.Add(dr) dr = dataTable.NewRow() dr(0) = 512901829 dr(1) = "Bluetoothスピーカー" dr(2) = "$125" dataTable.Rows.Add(dr) dr = dataTable.NewRow() dr(0) = 512900386 dr(1) = "USBメモリ" dr(2) = "$89" dataTable.Rows.Add(dr) 'シートにデータテーブルを書き込む worksheet.InsertDataTable(dataTable, True, 1, 1, True) '特定のセル範囲の列幅を自動的に調整する worksheet.AllocatedRange.AutoFitColumns() '1行目と3行目にスタイルを適用する Dim style As CellStyle = workbook.Styles.Add("newStyle") style.Font.IsBold = True worksheet.Range(1, 1, 1, 3).Style = style 'ファイルに保存する workbook.SaveToFile("InsertDataTable.xlsx", ExcelVersion.Version2016) End Sub End Class End Namespace 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。