Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/26: Рейтинг темы: голосов - 26, средняя оценка - 4.50
5 / 5 / 0
Регистрация: 01.04.2012
Сообщений: 213
Записей в блоге: 1

Выгрузка данных в Excel на стороне клиента

04.04.2012, 16:29. Показов 5284. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Подскажите пожалуйста как выгружать данные из бд в excel таким образом, чтобы документ excel создавался на машине клиента, а не на стороне сервера как предлагалось ранее. На сервере нет возможности подключить ссылку на Microsoft.Office.Interop.Excel. Потому хочу делать всё на стороне клиента.
Те, человек нажал на кнопку, у него в определённом месте на жёстком диске создался новый документ, в который передаются данные из БД.
Спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.04.2012, 16:29
Ответы с готовыми решениями:

Выгрузка данных в Excel
Здравствуйте! Помогите реализовать выгрузку данных в Excel. Задумка такая. Есть форма, на ней DGV и два dateTimePicker (на одном...

Выгрузка данных в Excel из Datatable
Долго мучался, в итоге имею следующее: ошибки и код. Подскажи пожалуйста в чем ошибки, почему код не определяет объекты. Хотя библиотеки...

Хранение набора результатов запроса на стороне клиента
Как правильно реализовать сабж? В ADODB у RecordSet было свойство CursorLocation, задав которому соответствующее значение можно было...

7
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
04.04.2012, 23:41
Рассмотрите как вариант:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            Workbook ExcelWorkBook;
            Worksheet ExcelWorkSheet;
            //Книга.
            ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            //Таблица
            ExcelWorkSheet = (Worksheet)ExcelWorkBook.Worksheets.get_Item(1);
 
            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                {
                    if (dataGridView1.Rows[i].Cells[j].GetType().Name == "DataGridViewComboBoxCell")
                    {
                        DataGridViewComboBoxCell dgvcbc = new DataGridViewComboBoxCell();
                        dgvcbc = (DataGridViewComboBoxCell)dataGridView1.Rows[i].Cells[j];
                        ExcelApp.Cells[i + 1, j + 1] = dgvcbc.EditedFormattedValue;
                    }
                    else
                    {
                        ExcelApp.Cells[i + 1, j + 1] = dataGridView1.Rows[i].Cells[j].Value;
                    }
                }
            }
            //Вызываем нашу созданную эксельку.
            ExcelApp.Visible = true;
            ExcelApp.UserControl = true;
1
5 / 5 / 0
Регистрация: 01.04.2012
Сообщений: 213
Записей в блоге: 1
04.04.2012, 23:59  [ТС]
Так ведь для этого мне надо на подключить ссылку на объект Excel, в проекте. А сервер на эту ссылку ругается потому что у него нет таких библиотек. Вы привели пример, когда используется всё-же эксель на стороне сервера ?
0
1057 / 864 / 195
Регистрация: 31.03.2010
Сообщений: 2,521
05.04.2012, 14:10
эти библиотеки появляются с установкой офиса. скорее всего на вашем сервере не уставлен он.
0
5 / 5 / 0
Регистрация: 01.04.2012
Сообщений: 213
Записей в блоге: 1
05.04.2012, 15:44  [ТС]
Конечно нет. Он там и не будет установлен. Я ведь и спросил, как сделать это на стороне клиента ??? чтобы не ставить офис на сервере
0
 Аватар для Петррр
6721 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
05.04.2012, 15:59
Ну так _katon_, привел же пример.
0
124 / 106 / 7
Регистрация: 14.02.2010
Сообщений: 263
05.04.2012, 16:05
Цитата Сообщение от SashaS Посмотреть сообщение
Конечно нет. Он там и не будет установлен.
Делайте документ через сторонние компоненты, например NPOI.
Цитата Сообщение от SashaS Посмотреть сообщение
Так ведь для этого мне надо на подключить ссылку на объект Excel, в проекте. А сервер на эту ссылку ругается потому что у него нет таких библиотек. Вы привели пример, когда используется всё-же эксель на стороне сервера ?
Какой сервер, если речь о клиентском приложении? Определить будет ли на машине юзера стоять MS Office в принципе невозможно. Но причём тут проект и сервер я не очень понимаю.
0
6 / 6 / 0
Регистрация: 02.04.2012
Сообщений: 21
27.04.2012, 06:42
На дерзай.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 protected void Export(object sender, EventArgs e)
    {
        string attachment = "attachment; filename=" + "fbp" + DateTime.Now.ToString("yyyyMMddHHmm") + ".xls";
        Response.ClearContent();
        Response.AddHeader("content-disposition", attachment);
        Response.ContentType = "application/ms-excel";
        System.IO.StringWriter sw = new System.IO.StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        HtmlForm frm = new HtmlForm();
        GridView1.Parent.Controls.Add(frm);
        ;
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(GridView1);
        
        frm.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
 
    }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.04.2012, 06:42
Помогаю со студенческими работами здесь

Как корректно закрыть соединение TCP на стороне клиента
Код следующий: TcpClient client = new TcpClient(server, port); Byte data ; // Get a client stream for...

Экспорт данных в Excel при условии, что на стороне клиента не установлен MS Office
Всем привет! Поевился такой вопрос, кто знает подскажите, пожалуйсто! Хочу сделать экспорт данных в excel, по похожему принципу: ...

Можно ли с использованием ASP/JavaScript ОТКРЫТЬ на стороне клиента Excel?
Можно ли с использованием ASP/JavaScript ОТКРЫТЬ на стороне клиента Excel?

Экспорт из SQL или со странци ASP.NET (GridView) в Excel, на стороне клиента
Здравствуйте. Как реализовать выгрузку данных в Excel на строне клента. То есть чтобы вся обработка проходила и запускалась именно на...

Проверка актуальности данных в БД на стороне клиента
!!!ОсторожноМногоБукв!!! Всем привет. Ситуация такая: есть БД, допустим в ней есть таблица &quot;Test&quot; с n-ым кол-вом столбцов и...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru