Kako pretvoriti DataTable u Excel u C#

Ovaj kratki vodič će vas voditi kako pretvoriti DataTable u Excel u C#. Prvo ćemo izraditi DataTable i zatim ga uvesti u radni list novostvorenog objekta radne knjige pomoću funkcije ImportData klase WorkSheet.Cells. Nakon zapisivanja podataka DataTable u Excel u C#, spremit ćemo ih kao XLSX datoteku na disk.

Koraci za pretvaranje DataTable u Excel u C#

  1. Pomoću upravitelja paketa NuGet dodajte Aspose.Cells for .NET za uvoz DataTablea u Excel
  2. Napravite instancu prazne Workbook za izvoz DataTablea u nju
  3. Stvorite i inicijalizirajte DataTable za pisanje u Excel datoteku
  4. Deklarirajte objekt klase ImportTableOptions za postavljanje parametara tijekom uvoza podataka iz DataTable
  5. Dobijte referencu na prvi radni list u novostvorenoj radnoj knjizi
  6. Pozovite funkciju Cells.ImportData u klasi WorkSheet za uvoz DataTablea
  7. Spremite rezultirajuću radnu knjigu s podacima iz DataTable

Ovi koraci opisuju postupak izvoza podataka iz DataTable u Excel u C# na način korak po korak tako da se prvo stvori prazna radna knjiga, a zatim se DataTable inicijalizira i ispuni nekim lažnim podacima. Stvara se objekt klase ImportTableOptions koji sadrži puno parametara koji se mogu postaviti, no ovdje se koriste zadane opcije. Na kraju, DataTable se uvozi u prvi radni list radne knjige u određenoj početnoj ćeliji.

Kod za izvoz podataka tablice podataka u Excel u C#

using System;
using System.Data;
using Aspose.Cells;
namespace ConvertDataTableToExcelInCSharp
{
class Program
{
static void Main(string[] args)
{
// Use Aspose.Cells license to remove trial version watermark from the Excel file after exporting DataTable
License licenseForCells = new License();
licenseForCells.SetLicense("Aspose.Cells.lic");
// Create an object of a workbook to export DataTable
Workbook workbookForDataTable = new Workbook();
// Create a sample DataTable for the student
DataTable studentTable = new DataTable("Student");
// Add multiple columns in the newly created DataTable
studentTable.Columns.Add("Roll No", typeof(long));
studentTable.Columns.Add("Age", typeof(short));
studentTable.Columns.Add("Name", typeof(string));
// Create a new row for adding to the data table
DataRow studentRecord = studentTable.NewRow();
// Set the fields data in the row
studentRecord["Roll No"] = 1002;
studentRecord["Age"] = 19;
studentRecord["Name"] = "Alfred Keam";
// Add this newly created record into the student table
studentTable.Rows.Add(studentRecord);
// Create another row for the student table
studentRecord = studentTable.NewRow();
// Set data in the newly created row
studentRecord["Roll No"] = 1003;
studentRecord["Age"] = 20;
studentRecord["Name"] = "Bernadette Thares";
// Add this record to the student table
studentTable.Rows.Add(studentRecord);
// Instantiate an object of ImportTableOptions for controlling the import of DataTable into Excel
ImportTableOptions importOptions = new ImportTableOptions();
// Get reference to the first worksheet in the workbook
Worksheet dataTableWorksheet = workbookForDataTable.Worksheets[0];
// Call the ImportData function to import DataTable starting from cell A1 described by row 0 and column 0
dataTableWorksheet.Cells.ImportData(studentTable, 0, 0, importOptions);
// Set the columns width so that entire data is visible within the cell
dataTableWorksheet.AutoFitColumns();
// Save the output workbook on the disc
workbookForDataTable.Save("DataTableImported.xlsx");
}
}
}

U ovom se kodu ImportTableOptions koristi sa zadanim postavkama, međutim, možete postaviti razne parametre poput popisa od 0 brojeva stupaca temeljenih na indeksu čiji se podaci trebaju uvesti iz DataTablea, postaviti format datuma, postaviti ukupne retke i stupce koji će se iz uvoza i još mnogo toga. Također možete odlučiti hoće li se naslovi stupaca uvesti ili ne.

Ovaj kratki vodič objasnio je kako u C# stvoriti Excel datoteku iz DataTable. Ako želite naučiti obrnuti postupak kao što je pretvaranje Excela u podatkovnu tablicu, pogledajte članak na kako pretvoriti Excel u DataTable u C#.

 Hrvatski