اگر بخواهیم به صورت سلولی درج کنیم:
ApplicationClass excel = new ApplicationClass();
excel.Application.Workbooks.Add(true);
int ColumnIndex = 0;
excel.Cells[1,1] ="نام";
excel.Cells[1, 2] = " نام خانوادگی";
excel.Cells[1, 3] = " موبایل";
int rowIndex = 0;
string val;
foreach (DataRow dr in objdataset.Tables[0].Rows)
{
rowIndex++;
ColumnIndex = 0;
foreach (DataColumn dc in objdataset.Tables[0].Columns)
{
ColumnIndex++;
if (dr[ColumnIndex - 1]==null)
val = "";
else
val = dr[ColumnIndex - 1].ToString();
excel.Cells[rowIndex + 1, ColumnIndex] = val;
}
}
excel.Visible = true;
اگر به صورت سطری
Microsoft.Office.Interop.Excel.Application excelApp = new
Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook excelBook =
excelApp.Workbooks.Add(XlSheetType.xlWorksheet);
Microsoft.Office.Interop.Excel.Worksheet excelWorksheet =
(Worksheet)(excelBook.Worksheets[1]);
excelApp.Visible = true;
excelWorksheet.DisplayRightToLeft = true;
Range rng1 = excelWorksheet.get_Range("A1", "A1");
rng1.Value2 = "کد";
rng1.Font.Bold = true;
Range rng2 = excelWorksheet.get_Range("B1", "B1");
rng2.Value2 = "نام";
rng2.Font.Bold = true;
Range rng3 = excelWorksheet.get_Range("C1", "C1");
rng3.Value2 = "نام خانوادگي";
rng3.Font.Bold = true;
Range rng4 = excelWorksheet.get_Range("D1", "D1");
rng4.Value2 = "موبایل";
rng4.Font.Bold = true;
int i = 1;
foreach (DataRow r in objdataset .Tables[0].Rows)
{
i++;
string s = i.ToString();
Range r1 = excelWorksheet.get_Range("A" + s, "A" + s);
r1.Value2 = r[0].ToString();
Range r2 = excelWorksheet.get_Range("B" + s, "B" + s);
r2.Value2 = r[1].ToString();
Range r3 = excelWorksheet.get_Range("C" + s, "C" + s);
r3.Value2 = r[2].ToString();
Range r4 = excelWorksheet.get_Range("D" + s, "D" + s);
r4.Value2 = r[3].ToString();
}
البته من نمی دونم دقیقه هدفت از وارد کردن سطری اطلاعات چیه؟اگر می خوای for تو در تو نداشته باشه این کد بالای خواسته تو بر آورده میکنه.
در مورد دستیابی به هر سلول هم تو همین کد بالایی نگاه کن.این کار رو انجام دادم.اول یه رنج تعریف می کنید بعد به خواص اون سول دسترسی پیدا م کنید مثلا من فونت همه هدر ها رو bold کردم.
در مورد اون سوال که مربوط به پهنای ستون بود اصلا متوجه نشدم اگه میتونی یه عکس ازش بذار.
در مورد ذخیره این کدو ببین:
excelApp.Save("d:\\test.xls");
فایل رو تو مسیر نوشته شده ذخیره میکنه اما موقع اجرای برامه مسیر ذخیره sheet رو هم میخواد! که من نمی دونم باید برای حل چه کرد.