Проблема в экспорте данных datagridview в excel с текстовым форматом в C# winform
если у меня есть те же данные в моей DataGridView форме моей базы данных и когда я экспортирую данные в Excel то эта проблема у меня есть
в DataGridView DataShow в Столбцах[1]
00001 00002 00005 00010 00015 00100
Код для загрузки DGV
private void LoanData() { String connstring = ConfigurationManager.ConnectionStrings["Data"].ConnectionString; using (OleDbConnection con = new OleDbConnection(connstring)) { con.Open(); using (OleDbDataAdapter da = new OleDbDataAdapter("select Sr, RequestNo, Date, Status from RequestData where RequestNo = @RequestNo", con)) { da.SelectCommand.Parameters.AddWithValue("@RequestNo", txtRequestNo.Text); DataTable dt = new DataTable(); da.Fill(dt); dataGridView1.DataSource = dt; dataGridView1.Columns[0].Width = 50; dataGridView1.Columns[0].HeaderText = "Sr.No"; dataGridView1.Columns[1].Width = 85; dataGridView1.Columns[1].HeaderText = "Request No."; dataGridView1.Columns[2].Width = 110; dataGridView1.Columns[2].HeaderText = "Date"; dataGridView1.Columns[2].DefaultCellStyle.Format = "dd/MM/yyyy"; dataGridView1.Columns[3].Width = 65; dataGridView1.Columns[3].HeaderText = "Request Status"; } } } and for Export use this Code private void button1_Click(object sender, EventArgs e) { DateTime fullDate = DateTime.Now; string folderPath = "C:\\Report\\"; if (!Directory.Exists(folderPath)) { Directory.CreateDirectory(folderPath); } Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Add(misValue); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); for (int i = 0; i < dataGridView1.Columns.Count; i++) { xlWorkSheet.Cells[10, i + 1] = dataGridView1.Columns[i].HeaderText; } for (int i = 0; i < dataGridView1.Rows.Count; i++) { for (int j = 0; j < dataGridView1.Columns.Count; j++) { DataGridViewCell cell = dataGridView1[j, i]; xlWorkSheet.Cells[i + 1 + 10, j + 1] = cell.Value; } } xlWorkSheet.Range["C2:C19"].NumberFormat = "dd/MM/yyy"; xlWorkSheet.Range["B2:B19"].NumberFormat = "@"; xlApp.Columns.AutoFit(); string filename = string.Format("Report_ {0}.xls", DateTime.Now.ToString("yyyyMMMdd")); string Savepath = Path.Combine(folderPath, filename); xlWorkBook.SaveAs(Savepath, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue); xlWorkBook.Close(true, misValue, misValue); xlApp.Quit(); var ConFirmResult = MessageBox.Show("Export Complected in " + Savepath + "" + Environment.NewLine + "Do you Want open this File ", "File Export Successfully", MessageBoxButtons.YesNo); if (ConFirmResult == DialogResult.Yes) { System.Diagnostics.Process.Start(Savepath); } else { } releaseObject(xlWorkSheet); releaseObject(xlWorkBook); releaseObject(xlApp); }
Что я уже пробовал:
но когда я экспортирую данные в Excel
экспорт данных
1 2 5 10 15 100
я использую код
xlWorkSheet.Range["B8:B19"].NumberFormat = "@";
OriginalGriff
Это не очень хороший вопрос - мы не можем понять из этого малого, что вы пытаетесь сделать.
Начните с того, что покажите нам код, который вы используете для загрузки DGV, код, который вы используете для экспорта в Excel, и некоторое представление о том, как выглядят ваши поля БД, вероятно, поможет вам. Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только то, что вы печатаете для работы, и есть много различных способов сделать эти вещи, все из которых могут дать разные результаты!
Используйте виджет "улучшить вопрос", чтобы отредактировать свой вопрос и предоставить более подробную информацию.
Amar chand123
я улучшил свой вопрос