سلام
دوستان چطور می تونم یک آرایه دو بعدی که در C# دارم رو به یک فایل اکسل صادر کنم ؟
ممنون میشم کسی راهنمایی کنه
سلام
دوستان چطور می تونم یک آرایه دو بعدی که در C# دارم رو به یک فایل اکسل صادر کنم ؟
ممنون میشم کسی راهنمایی کنه
سلام نگفتی تا چه حد خودت نوشتی؟ اصلا با اکسل میتونی ارتباط برقرار کنی؟ اگه میتونی با اکسل ارتباط برقرار کنی یه Range تعریف کن (میشه گفت ارایه تک بعدی بصورت ستونی) و مقادیر هر خانه ارایه دو بعدی رو با یه حلقه دراین ارایه تک بعدی قراربده.
من از این استفاده می کنم: DanielRieck.ExcelExporter
من با این کد از دیتاگریدویو خروجی Excel می گیرم:
DanielRieck.ExcelExporter.ExcelExporter excel = new DanielRieck.ExcelExporter.ExcelExporter();
DataTable dt = new DataTable();
foreach (DataGridViewColumn x in dgv.Columns)
if (x.Visible)
{
dt.Columns.Add(x.Name);
excel.Columns.Add(x.Name);
dt.Columns[dt.Columns.Count - 1].Caption = x.HeaderText;
excel.Columns[excel.Columns.Count - 1].HeaderText = x.HeaderText;
}
foreach (DataGridViewRow x in dgv.Rows)
{
string[] cells = new string[dt.Columns.Count];
for (int i = 0; i < cells.Length; i++)
if (x.Cells[dt.Columns[i].ColumnName].Value != null)
cells[i] = x.Cells[dt.Columns[i].ColumnName].Value.ToMyString();
else
cells[i] = "";
dt.Rows.Add(cells);
}
excel.DataSource = dt;
excel.Format = DanielRieck.ExcelExporter.ExcelExporterFormat.Xlsx ;
excel.AutoFitColumns = false;
excel.ShowGrid = true;
excel.GridStyle.BorderWeight = DanielRieck.OfficeInterop.Excel.XlBorderWeight.xlT hin;
excel.GridStyle.Color = Color.LightGray;
excel.GridStyle.LineStyle = DanielRieck.OfficeInterop.Excel.XlLineStyle.xlCont inuous;
excel.SaveXls("C:\\A.Xlsx");
شما بسته به نیازت کد رو تغییر بده
ببخشید گرد و خاک بلند می کنم!
من می خوام از این روش استفاده کنم و افزونه ExcelExport
private void button1_Click(object sender, EventArgs e)
{
string str = System.IO.Directory.GetCurrentDirectory();
new ExcelExport()
.AddSheet("Sample Names", new[] {
new { Name = "Bill Stewart", ZipCode = "00347", Birth_Date = new DateTime(1987, 6, 5) },
new { Name = "Russ Porter", ZipCode = "04257", Birth_Date = new DateTime(1956, 7, 8) },
new { Name = "Rodrick Rivers", ZipCode = "19867", Birth_Date = new DateTime(1956, 7, 8) }
}).ExportTo(System.IO.Directory.GetCurrentDirector y()+ "Sample.xlsx")
;
}
خط آخر باید چی بنویسم که بتونم در فولدر برنامه ایجاد بشه؟ الان این رو که نوشتم خطا میده!:
An unhandled exception of type 'System.InvalidOperationException' occurred in System.Data.dll
Additional information: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
تشکر