|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
Подскажите пожалуйста как произвести экспорт данных в Excel из DataGridView через DataTable. Вот структура. Как использовать вместо DataGridView DataTable. namespace V2 { public partial class _2VER : Form { public _2VER() { InitializeComponent(); } OleDbConnection conn = new OleDbConnection(); OleDbCommand comm = new OleDbCommand(); OleDbDataAdapter ad = new OleDbDataAdapter(); BindingSource bs = new BindingSource(); DataTable dt = new DataTable(); private void _2VER_Load(object sender, EventArgs e) { conn.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\Прочие документы\Учеба 2014\Управление проектами\V2\ПРАКТИКА2.accdb"; comm=conn.CreateCommand(); comm.CommandText = "select * from ПК"; ad.SelectCommand = comm; ad.Fill(dt); dataGridView1.DataSource = dt; } private void button1_Click(object sender, EventArgs e) { Excel2.Application app = new Excel2.Application(); app.SheetsInNewWorkbook = 2; app.Workbooks.Add(); app.Visible = true; Excel2.Workbook book = app.Workbooks[1]; Excel2.Worksheet sheet2 = book.Worksheets[2]; for (int i = 1; i < dataGridView1.Columns.Count + 1; i++) { sheet2.Cells[1, i] = dataGridView1.Columns[i - 1].HeaderText; } for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) { for (int j = 0; j < dataGridView1.Columns.Count; j++) { sheet2.Cells[i + 2, j + 1] = dataGridView1.Rows[i].Cells[j].Value.ToString(); } } sheet.Activate(); } } } ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 10:39 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
Опять убогий ком интероп? ) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2014, 13:29 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
А381ПТК, не в коем случае такого не делай... как минимум создать документ xlsx и пихнуть туда данные посредством OleDB, через OleDBdataAdapter, из DataTable... тут строки подключения к Excel: http://www.connectionstrings.com/excel/ как написать схему для Excel, пойщи по слову: Schema.ini либо выгружай в xml, у DataTable есть спец. функция... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 01:25 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
WitCА381ПТК, не в коем случае такого не делай...С чего это вдруг? В гриде пользователь может скрыть какие-то колонки, поменять их местами, наложить фильтры, группировки. Разные строки (ячейки) могут быть подсвечены разными цветами. И всё это пользователь захочет выгрузить в Excel. Так что я бы не был столь категоричным. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 08:18 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
OleDB малоэффективное средство. OpenXML наше всё. Интероп - дичайшее зло. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 11:06 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
skyANAWitCА381ПТК, не в коем случае такого не делай...С чего это вдруг? В гриде пользователь может скрыть какие-то колонки, поменять их местами, наложить фильтры, группировки. Разные строки (ячейки) могут быть подсвечены разными цветами. И всё это пользователь захочет выгрузить в Excel. Так что я бы не был столь категоричным. таки да, слишком категорично. средство есть, оно работает. всё остальное - дело вкуса... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 12:16 |
|
экспорт в Excel из datagridView
|
|||
---|---|---|---|
#18+
А381ПТКПодскажите пожалуйста как произвести экспорт данных в Excel из DataGridView через DataTable. Вот структура. Как использовать вместо DataGridView DataTable. DataTable dt=(DataTable) DataGridView.DataSource Запись массива данных в позицию строки numrow и столбца numcolumn Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Я предпочитаю DataRow[], а не DataTable, т.к. часто требуется вставлять отфильтрованные данные. Для вставки всей таблицы передается DataTable.Select() P.S. Любителям побросаться камнями в Interop, буду благодарен, если скажете, какими еще средствами можно раскрашивать ячейки, делать группировки строк и столбцов, писать формулы и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2014, 14:06 |
|
|
start [/forum/topic.php?fid=20&msg=38543035&tid=1403341]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 137ms |
0 / 0 |