powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как экспортировать Данные в Excel
9 сообщений из 9, страница 1 из 1
Как экспортировать Данные в Excel
    #32334903
Rid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rid
Гость
Ребята,
Я все бьюсь да бьюсь об грабли.... шишек сто набли уже...
Вообщем так: Необходимо из Dataset Экспортировать Таблицу в Эксел.
Использую SQL2000, SqlDataAdapter,SQlConnection, Dataset,Datagrid
в Datagrid закидываю необходимую мне таблицу. А вот как ее Экспортировать теперь и через что???
Дайте пожалуйста пример хороший и простой, и через какой компонент.
Я пытаюсь через COM (Q316126) там есть пример, да и то он тоже глючит...
и требует открытого уже Excel. А Вот как его программно открыть и затем экспортировать....
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32334930
swed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно попробовать так:

Private Excel as Excel.Application
Try
'ищем запущенный
Excel = System.Runtime.InteropServices.Marshal.GetActiveObject ("Excel.Application")
Catch
'запущенного нет
'создадим новый объект
Excel = CreateObject("Excel.Application", "")
End Try
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32334958
Rid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rid
Гость
Вписал это:
Excel = CreateObject("Excel.Application", "") ;
при дебаге происходит ошибка:
C:\Inetpub\wwwroot\reports\Oselect.aspx.cs(192):
No overload for method 'CreateObject' takes '2' arguments

убираю 2 аргумент:
Excel = CreateObject("Excel.Application");

при дебаге происходит ошибка:
C:\Inetpub\wwwroot\reports\Oselect.aspx.cs(192):
Cannot implicitly convert type 'object' to 'Microsoft.Office.Interop.Excel.Application'

дописываю:
Excel =(Excel.Application)Server.CreateObject("Excel.Application");
Запустилась, при вызове процедуры где должна выполниться тасамая строка
выходит:

Access is denied.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.UnauthorizedAccessException: Access is denied.
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32334973
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Excel.Application ExAp;

try
{
ExAp=(Excel.Application)Marshal.GetActiveObject("Excel.Application");
}
catch
{
ExAp =new Excel.Application();
}
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32335861
Фотография EvgeniyW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот топик из ворума про это
http://www.gotdotnet.ru/Forums/DataWorks/23441.aspx
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32336529
Rid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rid
Гость
На Ответ Guest:
Access denied.

на EvgeniyW:
там типа бес пол пузыря не разберусь.

Может я не так вопрос поставил... Может мне надо другим путем.
У меня есть заполненый Datagrid. Вот его как то можно нажав на кнопку, типа "сохранить как" и сохранить в формате Excel? может для этого существуют другие компоненты и свойства функци уже готовые. Да если что у меня все это на ASPX то есть завязано с ASP.NET .. и никак не Windows Application.
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32337641
Фотография khaoz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а не хочешь сделать csv? его понимает excell, а если данных много (больше 65К строк) его можно в acces-е поднять.



Код: plaintext
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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
using System.Text;
using System.IO;

...

String strFileName = srtDir + fileName;
String delim =  ";" ;

Encoding unicode = Encoding.Unicode;
StreamWriter objStream = new StreamWriter (strFileName,false,unicode);

for (int i =  0 ; i < ds.Tables[ 0 ].Columns.Count; i++)
 {
  if (i == ds.Tables[ 0 ].Columns.Count- 1 )
   {
     objStream.WriteLine('\"' + ds.Tables[ 0 ].Columns[i].ToString() + '\"' );
   }
  else
   {
     objStream.Write('\"' + ds.Tables[ 0 ].Columns[i].ToString() + '\"' + delim);
   }
 };

foreach (DataRow myRow in ds.Tables[ 0 ].Rows)
 {
  for (int i =  0 ; i < myRow.ItemArray.Length; i++)
   {
    if (i == myRow.ItemArray.Length- 1 )
     {
       objStream.WriteLine('\"' + myRow[i] + '\"' );
     }
    else
     {
       objStream.Write('\"' + myRow[i] + '\"' + delim);
     }
   };
  };

objStream.Close();

...


Mikhail N. Khozeev
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32338372
Rid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Rid
Гость
Спасибо за пример,
но вот это как юы еще не то. Просто чайникам не объяснишь потом сделайте то сделайте это... поэтому может есть что то более простое. Вот нашел такое решение:
<%Pesponse.ContentType="aplication/vnd.ms-exsel" %>

и страницу отображает в формате Excel. Но вот беда, он предлагает ее оставить с раширением aspx в формате Excel, а вот как указать что бы окончание файла *.xls
...
Рейтинг: 0 / 0
Как экспортировать Данные в Excel
    #32339173
Фотография khaoz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Rid

Кхмм... А вот у меня попросили сначала сделать хлс, на что я ответил экспортом отчёта Crystall Reports в эксэль. Аналитики подождали, помучались, а потом решили, что цсв -- это то, что им надо. Может быть мне повезло :)

Mikhail N. Khozeev
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как экспортировать Данные в Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]