Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Экспорт данных из DataGridView в Excel  [new]
Linel
Member

Откуда:
Сообщений: 339
Экспортиую данных из DataGridView в Excel, все работает, но вопрос заключается в следующем...
В DataGridView используется ComboBox и в место того что бы в Excel экспортировать, то что видет пользователь экспортируется значение Value. помогите преобразовать код...
static object missing = Missing.Value;
{
this.Cursor = Cursors.WaitCursor;
            this.Text = "Выполняется экспорт данных в Microsoft Excel... Подождите пожалуйста..."; 
            // Work with Excel

            Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook excelBook = excelApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
            Microsoft.Office.Interop.Excel._Worksheet excelWorksheet = (Microsoft.Office.Interop.Excel._Worksheet)excelBook.Worksheets.get_Item(1);

            excelApp.Visible = true;

            // Set the column headers and desired formatting for the spreadsheet.
            excelWorksheet.Columns.ColumnWidth = 25;
            excelWorksheet.get_Range("A1", missing).Value2 = "№ п/п";
            excelWorksheet.get_Range("A1", missing).Font.Bold = true;
            excelWorksheet.get_Range("B1", missing).Value2 = "Гос. номер";
            excelWorksheet.get_Range("B1", missing).Font.Bold = true;
            excelWorksheet.get_Range("C1", missing).Value2 = "Марка ТС";
            excelWorksheet.get_Range("C1", missing).Font.Bold = true;
            excelWorksheet.get_Range("D1", missing).Value2 = "Гаражный номер";
            excelWorksheet.get_Range("D1", missing).Font.Bold = true;
            excelWorksheet.get_Range("E1", missing).Value2 = "Заводской номер";
            excelWorksheet.get_Range("E1", missing).Font.Bold = true;
            excelWorksheet.get_Range("F1", missing).Value2 = "Номер двигателя";
            excelWorksheet.get_Range("F1", missing).Font.Bold = true;
            excelWorksheet.get_Range("G1", missing).Value2 = "Номер кузова";
            excelWorksheet.get_Range("G1", missing).Font.Bold = true;





           
            int i = 2;

           
            foreach (DataGridViewRow dr in kartochkaTransSredstvoDataGridView.Rows)
            {
                
                                
                excelWorksheet.get_Range("A" + i.ToString(), missing).Value2 = dr.Cells[0].Value;
                excelWorksheet.get_Range("B" + i.ToString(), missing).Value2 = dr.Cells[1].Value;
                excelWorksheet.get_Range("C" + i.ToString(), missing).Value2 = dr.Cells[2].Value;
                excelWorksheet.get_Range("D" + i.ToString(), missing).Value2 = dr.Cells[3].Value;
                excelWorksheet.get_Range("E" + i.ToString(), missing).Value2 = dr.Cells[4].Value;
                excelWorksheet.get_Range("F" + i.ToString(), missing).Value2 = dr.Cells[5].Value;
                excelWorksheet.get_Range("G" + i.ToString(), missing).Value2 = dr.Cells[6].Value;

                
                i++;

               
            }
            
            this.Cursor = Cursors.Default;
            this.Text="Транспортное средство";
}
Спасибо!!!
15 сен 08, 11:01    [6184216]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из DataGridView в Excel  [new]
Идалия
Member

Откуда: Провинция
Сообщений: 45
попробуйте взять не Value, а FormattedValue , ну или что-то вроде того
15 сен 08, 11:41    [6184494]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из DataGridView в Excel  [new]
Linel
Member

Откуда:
Сообщений: 339
Спасибо...
15 сен 08, 11:54    [6184583]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из DataGridView в Excel  [new]
pyroman69
Member

Откуда: Москва
Сообщений: 2025
Linel
Экспортиую данных из DataGridView в Excel, все работает, но вопрос заключается в следующем...
            ........................           
            foreach (DataGridViewRow dr in kartochkaTransSredstvoDataGridView.Rows)
            {
                
                //Вот это УЖАС!!! Можно всё одной строкой сделать!                
                [b]excelWorksheet.get_Range("A" + i.ToString(), missing).Value2 = dr.Cells[0].Value;
                excelWorksheet.get_Range("B" + i.ToString(), missing).Value2 = dr.Cells[1].Value;
                excelWorksheet.get_Range("C" + i.ToString(), missing).Value2 = dr.Cells[2].Value;
                excelWorksheet.get_Range("D" + i.ToString(), missing).Value2 = dr.Cells[3].Value;
                excelWorksheet.get_Range("E" + i.ToString(), missing).Value2 = dr.Cells[4].Value;
                excelWorksheet.get_Range("F" + i.ToString(), missing).Value2 = dr.Cells[5].Value;
                excelWorksheet.get_Range("G" + i.ToString(), missing).Value2 = dr.Cells[6].Value;[/b]
                
                
                i++;

               
            }           
            .......................
}
Спасибо!!!


а по теме, попробуйте св-во SelectedText у комбо бокса
15 сен 08, 11:54    [6184585]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Экспорт данных из DataGridView в Excel  [new]
Svetosha
Member

Откуда:
Сообщений: 32
Понимаю, что не в тему, но может кто подскажет, как задать выравнивание в столбце Excel
А то вот что получается

К сообщению приложен файл. Размер - 0Kb
17 ноя 09, 18:28    [7941692]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить