C# を使用してデータを Excel ファイルにエクスポートする
-
C#を使用してデータを Excel にエクスポート -
C#を使用して配列から Excel にデータをエクスポートする -
C#を使用して DataTable から Excel にデータをエクスポートする -
C#を使用して JSON から Excel にデータをエクスポートする
このチュートリアルでは、C# でデータを Excel ファイルにエクスポートする方法を説明します。
C# を使用してデータを Excel にエクスポート
このプロジェクトを進めるには、参照を追加して Excel ファイルを作成し、それをエクスポートする必要があります。
参照パッケージを追加する
Excel のさまざまな操作のために、ExcelMapper パッケージを追加します。 これを行うには、次の手順に従います。
-
Visual Studio を開き、コンソール アプリケーションを作成して名前を付けます。
-
ソリューション エクスプローラー パネルを右クリックし、[NuGet パッケージの管理] を選択します。
-
[参照] オプションをクリックし、
ExcelMapperを検索してインストールします。
パッケージを追加したら、サンプル プログラムのコードを記述します。 以下の例では、学生からのランダム データを使用します。
例:
-
まず、次のライブラリをインポートします。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Ganss.Excel; -
nameとmarksデータ メンバーを持つStudentクラスを作成します。public class Student { public String name { get; set; } public double marks { get; set; } } -
Programという名前の別のクラスを作成し、そのクラスにMain()メソッドを作成します。public class Program { public static void Main(string[] args) {} } -
Main()メソッドでは、StudentクラスのList<>型オブジェクトを作成します。var s = new List<Student> {} -
以下に示すように、このオブジェクトにはいくつかのランダムな
Studentデータが取り込まれます。var s = new List<Student> { new Student { name = "M.Zeeshan", marks = 94.0 }, new Student { name = "Shani", marks = 84.0 }, new Student { name = "Saada g", marks = 74.0 }, new Student { name = "Haseeba", marks = 34.0 }, }; -
次に、
maperという名前のExcelMapperオブジェクトを作成します。ExcelMapper maper = new ExcelMapper(); -
作成したばかりのデータを保存するために、必要なパスまたはディレクトリにサンプル ファイルを作成します。
var newFile = @"D:\sample.xlsx"; -
最後に、ExcelMapper の
maper.Save()関数を使用してファイルを保存します。maper.Save(newFile, s, "ShaniData", true);
完全なソース コード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Ganss.Excel;
namespace DatatoExcelbyZeeshan {
public class Program {
public static void Main(string[] args) {
var s = new List<Student> {
new Student { name = "M.Zeeshan", marks = 94.0 },
new Student { name = "Shani", marks = 84.0 },
new Student { name = "Saada g", marks = 74.0 },
new Student { name = "Haseeba", marks = 34.0 },
};
ExcelMapper maper = new ExcelMapper();
var newFile = @"D:\sample.xlsx";
maper.Save(newFile, s, "ShaniData", true);
Console.ReadKey();
}
}
public class Student {
public String name { get; set; }
public double marks { get; set; }
}
}
sample.xlsx ファイルに次の出力が表示されます。

C# を使用して配列から Excel にデータをエクスポートする
実際にそれを理解するために例を挙げましょう。
参照パッケージを追加する
Excel のさまざまな操作のために、ExcelMapper パッケージを追加します。 これを行うには、次の手順に従います。
-
まず、Visual Studio を開き、コンソール アプリケーションを作成して名前を付けます。
-
ソリューション エクスプローラー パネルを右クリックし、[NuGet パッケージの管理] を選択します。
-
[参照] オプションをクリックし、
Spire.Xlsを検索してインストールします。
例:
-
まず、次のライブラリをインポートします。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Spire.Xls; -
次に、
Workbookの新しいインスタンスを作成し、wbという名前を付けます。Workbook wb = new Workbook(); -
新しい
Worksheetを含めて、wsという名前を付けます。Worksheet ws = wb.Worksheets.Add("ShaniArray"); -
新しい配列を作成し、
ProgramSubjectResultsという名前を付けてから、いくつかのデータを追加します。string[,] ProgramSubjectResults = new string[,] { { "Name", "City", "Gpa", "Language" }, { "Zeeshan", "ISB", "3.7", "Flutter Development" }, { "Saad Jaan", "RWP", "4.0", "Full Stack" }, { "Haseeba", "FATA", "3.53", "Andriod Development" } }; -
ワークシートに配列を含めるには、セルから始めます。ws.InsertArray(ProgramSubjectResults, 2, 1); ws.AllocatedRange.AutoFitColumns(); -
最後に、作成した配列に名前を付けて、Excel ファイルとして保存します。
wb.SaveToFile(@"D:\ArraytoExcel.xlsx", ExcelVersion.Version2016);
完全なソース コード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Spire.Xls;
namespace ExportArraytoExcelbyZeeshan {
class Program {
static void Main(string[] args) {
Workbook wb = new Workbook();
wb.Worksheets.Clear();
Worksheet ws = wb.Worksheets.Add("ShaniArray");
string[,] ProgramSubjectResults =
new string[,] { { "Name", "City", "Gpa", "Language" },
{ "Zeeshan", "ISB", "3.7", "Flutter Development" },
{ "Saad Jaan", "RWP", "4.0", "Full Stack" },
{ "Haseeba", "FATA", "3.53", "Andriod Development" } };
ws.InsertArray(ProgramSubjectResults, 2, 1);
ws.AllocatedRange.AutoFitColumns();
wb.SaveToFile(@"D:\ArraytoExcel.xlsx", ExcelVersion.Version2016);
}
}
}
出力:

C# を使用して DataTable から Excel にデータをエクスポートする
次の例を使用して、これを行う方法を見てみましょう。
参照パッケージを追加する
DataTable を Excel にエクスポートするには、ExcelMapper パッケージを追加します。 これを行うには、前に説明した手順に従います。
例:
-
まず、次のライブラリをインポートします。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data; using Spire.Xls; -
次に、
Workbookの新しいインスタンスを作成し、wbという名前を付けます。Workbook wb = new Workbook(); wb.Worksheets.Clear(); -
新しい
Worksheetインスタンスを含めて、wsという名前を付けます。Worksheet ws = wb.Worksheets.Add("DataTableToExcel"); -
DataTable型のオブジェクトを作成し、dtという名前を付けます。DataTable dt = new DataTable(); -
Roll Number、Student Name、およびSectionsを列として追加します。dt.Columns.Add("Roll Number", typeof(String)); dt.Columns.Add("Student Name", typeof(String)); dt.Columns.Add("Section", typeof(String)); -
DataRowタイプのオブジェクトを作成し、dtrという名前を付ける必要があります。DataRow dtr = dt.NewRow(); -
以下に示すように、データを
DataRow列に挿入します。dtr[0] = "130-Arid-3227"; dtr[1] = "Muhammad Zeeshan"; dtr[2] = "Bs(IT)8A"; dt.Rows.Add(dtr); dtr = dt.NewRow(); dtr[0] = "123-Arid-3156"; dtr[1] = "Bubby Shah"; dtr[2] = "Bs(AI)7C"; dt.Rows.Add(dtr); dtr = dt.NewRow(); -
作成したスプレッドシートに
DataTable列を書き込みます。ws.InsertDataTable(dt, true, 1, 1, true); -
最後に、ドキュメントに名前を付けて、Excel ファイルとして保存します。
wb.SaveToFile(@"C:\DataTableToExcel.xlsx", ExcelVersion.Version2016);
完全なソース コード:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using Spire.Xls;
namespace ExportDataTableToExcelByZeeshan {
class Program {
static void Main(string[] args) {
Workbook wb = new Workbook();
wb.Worksheets.Clear();
Worksheet ws = wb.Worksheets.Add("DataTableToExcel");
DataTable dt = new DataTable();
dt.Columns.Add("Roll Number", typeof(String));
dt.Columns.Add("Student Name", typeof(String));
dt.Columns.Add("Section", typeof(String));
DataRow dtr = dt.NewRow();
dtr[0] = "130-Arid-3227";
dtr[1] = "Muhammad Zeeshan";
dtr[2] = "Bs(IT)8A";
dt.Rows.Add(dtr);
dtr = dt.NewRow();
dtr[0] = "123-Arid-3156";
dtr[1] = "Bubby Shah";
dtr[2] = "Bs(AI)7C";
dt.Rows.Add(dtr);
dtr = dt.NewRow();
ws.InsertDataTable(dt, true, 1, 1, true);
wb.SaveToFile(@"C:\DataTableToExcel.xlsx", ExcelVersion.Version2016);
}
}
}
出力:

C# を使用して JSON から Excel にデータをエクスポートする
以下の例は、C# を実際に使用して JSON データを Excel にエクスポートする方法を理解するのに役立ちます。
参照パッケージを追加する
Excel の Json 操作のために、GemBox.Spreadsheet と Newtonsoft.Json パッケージを追加します。 これを行うには、次の手順に従います。
-
まず、Visual Studio を開き、コンソール アプリケーションを作成して名前を付けます。
-
ソリューション エクスプローラー パネルを右クリックし、[NuGet パッケージの管理] を選択します。
-
[参照] オプションをクリックし、
GemBox.SpreadsheetとNewtonsoft.Jsonを検索してインストールします。

例:
-
まず、次のライブラリをインポートします。
using System; using System.Collections.Generic; using GemBox.Spreadsheet; using Newtonsoft.Json; -
GemBox.Spreadsheetパッケージの他のクラスを使用する前に、SpreadsheetInfo.SetLicense()関数を使用してライセンスを初期化する必要があります。SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY"); -
ここで、
JsonDataという名前の JSON ファイルを作成し、Studentsデータを入力します。string JsonData = @"{ ""0"": { ""Name"": ""Muhammad Zeeshan"", ""Roll"": ""3227"", ""GPA"": 3.11, ""Fyp"": ""Garden Guide System"" }, ""1"" : { ""Name"": ""Bubby Shah"", ""Roll"": ""3265"", ""GPA"": 2.9, ""Fyp"": ""Football Field Management"" }, ""2"" : { ""Name"": ""Haseeb-Ur-Rehman"", ""Roll"": ""3156"", ""GPA"": 3.9, ""Fyp"": ""Plants Recognition"" } }"; -
JSON ファイルを定義した後、JSON 文字列を逆シリアル化します。
Dictionary<string, Student> shani = JsonConvert.DeserializeObject<Dictionary<string, Student>>(JsonData); -
Excel で新しいワークシートを作成し、
wsという名前を付けます。 その後、ワークシートのヘッダー値を作成します。ExcelWorksheet ws = wb.Worksheets.Add("ShaniJSON" + ""); ws.Cells[0, 0].Value = "Student Name"; ws.Cells[0, 1].Value = "Roll No"; ws.Cells[0, 2].Value = "GPA"; ws.Cells[0, 3].Value = "FYP"; -
ワークシートが作成されたら、逆シリアル化されたデータをワークシートに書き込みます。
int row = 0; foreach (Student user in shani.Values) { ws.Cells[++row, 0].Value = user.Fname; ws.Cells[row, 1].Value = user.Roll; ws.Cells[row, 2].Value = user.Gpa; ws.Cells[row, 3].Value = user.Fyp; } -
最後のステップで、指定したディレクトリにファイルを Excel ファイルとして保存します。
wb.Save(@"D:\JSON TO Excel by Zeeshan.xlsx");
完全なソース コード:
using System;
using System.Collections.Generic;
using GemBox.Spreadsheet;
using Newtonsoft.Json;
namespace JsontoExcelByZeeshan {
class Program {
static void Main(string[] args) {
SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY");
string JsonData =
@"{
""0"": {
""Name"": ""Muhammad Zeeshan"",
""Roll"": ""3227"",
""GPA"": 3.11,
""Fyp"": ""Garden Guide System""
},
""1"" : {
""Name"": ""Bubby Shah"",
""Roll"": ""3265"",
""GPA"": 2.9,
""Fyp"": ""Football Field Management""
},
""2"" : {
""Name"": ""Haseeb-Ur-Rehman"",
""Roll"": ""3156"",
""GPA"": 3.9,
""Fyp"": ""Plants Recognition""
}
}";
Dictionary<string, Student> shani =
JsonConvert.DeserializeObject<Dictionary<string, Student>>(JsonData);
ExcelFile wb = new ExcelFile();
ExcelWorksheet ws = wb.Worksheets.Add("ShaniJSON" + "");
ws.Cells[0, 0].Value = "Student Name";
ws.Cells[0, 1].Value = "Roll No";
ws.Cells[0, 2].Value = "GPA";
ws.Cells[0, 3].Value = "FYP";
int row = 0;
foreach (Student user in shani.Values) {
ws.Cells[++row, 0].Value = user.Fname;
ws.Cells[row, 1].Value = user.Roll;
ws.Cells[row, 2].Value = user.Gpa;
ws.Cells[row, 3].Value = user.Fyp;
}
wb.Save(@"D:\JSON TO Excel by Zeeshan.xlsx");
}
}
class Student {
[JsonProperty("Name")]
public string Fname { get; set; }
[JsonProperty("Roll")]
public string Roll { get; set; }
[JsonProperty("GPA")]
public float Gpa { get; set; }
[JsonProperty("Fyp")]
public string Fyp { get; set; }
}
}
出力:

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn