4 / 4 / 1
Регистрация: 14.01.2010
Сообщений: 17

Экспорт данных в Excel из DataGridView

16.09.2010, 11:31. Показов 68609. Ответов 70
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Экспорт данных в Excel из DataGridView. Как это делается помогите пожалуйста? Из БД Экспорт получается но я хотел после компиляции из DataGridView экспортировать.
1
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.09.2010, 11:31
Ответы с готовыми решениями:

Экспорт данных из datagridview в Excel
Всем привет! Может кто-нибудь подсказать как сделать "Экспорт данных их datagridview в Exel", то есть имеется сетка с данными и при...

Экспорт данных из Excel-я в DataGridView
Здравствуйте друзья Как реализовать экспорт данных из экзеля в datagridview.

Экспорт данных из dataGridView в Excel?
Я вывожу запросом данные из базы в dataGridView (на русунке ) хочу вывести эти данные в Excel как показано на изображении. Можно такое...

70
0 / 0 / 0
Регистрация: 04.04.2016
Сообщений: 11
14.06.2017, 06:58
Студворк — интернет-сервис помощи студентам
Дико извиняюсь, но есть вопрос по это теме. Экспорт работает, всё отлично. Только вот почему-то не экспортируются названия столбцов. Это не есть красиво.
0
0 / 0 / 0
Регистрация: 12.11.2019
Сообщений: 1
12.11.2019, 18:16
Вот тут вроде, подробно ответили
https://codeindex.ru/q/433232-... ccess.html
0
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 35
30.07.2021, 09:59
Здравствуйте! При клике на button у меня пишутся данные в уже существующий файл, как сделать так, чтобы данные писались в столбец и каждый раз дописывался новый столбец с права.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private void butGetExl_Click(object sender, EventArgs e)
        {
            Excel.Application ExcelApp = new Excel.Application();
            Excel.Workbook ExcelWorkBook;
            Excel.Worksheet ExcelWorkSheet;
            //Книга.
            //ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkBook = ExcelApp.Workbooks.Open(@"\\сервер\путь\файл.xlsx");
 
            //Таблица.
            ExcelWorkSheet = (Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);
 
            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                {
                    ExcelApp.Cells[i + 1, j + 1] = dataGridView1.Rows[i].Cells[j].Value;
                }
            }
            ExcelApp.Visible = true;
            ExcelApp.UserControl = true;
        }
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3450 / 2771 / 575
Регистрация: 04.09.2018
Сообщений: 8,715
Записей в блоге: 3
30.07.2021, 10:06
Проверяйте столбцы на пустоту. Как нашли пустой, записываете индекс поиска в i и с этой позиции начинаете писать в файл.
0
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 35
30.07.2021, 10:08
Цитата Сообщение от wizard41 Посмотреть сообщение
Проверяйте столбцы на пустоту. Как нашли пустой, записываете индекс поиска в i и с этой позиции начинаете писать в файл.
а пример кода можете показать ?
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3450 / 2771 / 575
Регистрация: 04.09.2018
Сообщений: 8,715
Записей в блоге: 3
30.07.2021, 10:12
Цитата Сообщение от bogus_s Посмотреть сообщение
а пример кода можете показать
Прям сейчас нет, но на форуме что-то подобное попадалось. Попробуйте поискать.
0
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 35
30.07.2021, 11:38
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
string fileName = "G:\\C#\\ExcelFile.xlsx"; //имя Excel файла  
            Excel.Application xlApp = new Excel.Application();
            Excel.Workbook xlWb = xlApp.Workbooks.Open(fileName); //открываем Excel файл
            Excel.Worksheet xlSht = xlWb.Sheets[1]; //первый лист в файле
            int iLastRow = xlSht.Cells[xlSht.Rows.Count, "A"].End[Excel.XlDirection.xlUp].Row;  //последняя заполненная строка в столбце А
            for (int i = 1; i < 51; i++)
            {
                iLastRow++;
                xlSht.Cells[iLastRow, "A"].Value = i.ToString();
            }                        
            //xlApp.Visible = true;
            xlWb.Close(true); //закрыть и сохранить книгу
            xlApp.Quit();
            MessageBox.Show("Файл успешно сохранён!");
нашел такой код, но как его сделать чтобы запись проверялась не на последнюю строку в столбце, а проверка последнего столбца.
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3450 / 2771 / 575
Регистрация: 04.09.2018
Сообщений: 8,715
Записей в блоге: 3
30.07.2021, 11:53
Перебирайте значения первой строки до тех пор, пока не встретится пустота.
C#
1
2
3
4
for (int i = 1; i < 51; i++)
            {
                if(xlSht.Cells[1, i].Value == "") { idxCell = i; break; }
            }
В idxCell теперь индекс столба, в который можно записать новые данные.
0
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
30.07.2021, 12:13
bogus_s,
.. есть у WorkSheet еще такое свойство, как UsedRange (т.е. диапазон заполненных ячеек), к нему можно применить .Columns.Count - получив количество столбцов, и Offset() - сдвинувшись от конца в нужное место ...
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3450 / 2771 / 575
Регистрация: 04.09.2018
Сообщений: 8,715
Записей в блоге: 3
30.07.2021, 12:29
Цитата Сообщение от carrotik Посмотреть сообщение
как UsedRange
Это точно. Хотел об этом сказать, но подумал, что это еще больше усугубит ситуацию...
0
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 35
02.08.2021, 10:36
Вот к примеру, прикрепил xl-файл. Так и не понял, как сделать чтобы при клике на button данные из datagrid писались в такой вот эксель файл, но чтобы данные дописывались справа, от последних нулей. Т.е. чтобы выполнялся поиск пустых ячеек и запись в них информации.
Вложения
Тип файла: xlsx test.xlsx (12.0 Кб, 9 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.08.2021, 10:36
Помогаю со студенческими работами здесь

Экспорт данных в Excel из DataGridView
Всем привет! Думаю тема многим знакома потому, что почти каждый третий работающий в С# сталкивался, рано или поздно, с работой с...

Экспорт данных из DataGridView в Excel
Помогите пожалуйста, я экспортировала данные из datagridview в эксель, затем по этим данным в экселе сделала диаграмму, но когда по новой...

Экспорт данных из файла Excel в DataGridView
Нашел код для загрузки данных Excel в таблицу DataGridView: private void завантажитиToolStripMenuItem_Click_1(object sender,...

Datagridview экспорт в Excel и исключение некоторых данных
Привет, вот я так экспортирую из datagridview в Excel private void ecxelToolStripMenuItem_Click(object sender, EventArgs e) { ...

Экспорт DataGridView to Excel
Нашёл на codeproject статью &quot;Exporting a DataGridView to Excel in .NET 2.0 (C# code)&quot;. Там говорится, что для начала нужно создать объект...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
71
Ответ Создать тему
Опции темы

Новые блоги и статьи
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове. Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru