Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Excel и C#. начало начал! не могу даже запустить банальные примеры 
:(
    Опции темы
zenit
Дата 15.5.2007, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 2.10.2006

Репутация: нет
Всего: нет



Мне для начала необходимо научиться хотя бы читать и парзовать Eхсel файлы. Но почему-то не распознаётся даже следущее подключение: System.Office... или using Excel = Microsoft.Office.Interop.Excel; По идее я сделал необходимые подключения библиотек, описанные в инете (Microsoft Eхcel 9.0 Object Library, Microsoft Office 9.0 Object Library, Systems.Windows.Forms). Установлено следущее: WinХP, MSOffice2000, МС Visual С#. Что же всё-таки эшё необходимо, чтобы стартануть? Спасибо!
PM MAIL   Вверх
Gelis
Дата 15.5.2007, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 26.10.2006
Где: Брест

Репутация: 2
Всего: 4



У меня все нормально:

Код

using Excel;

...........................
            Excel.Application xlapp = new Application();
            xlapp.Visible = true;
................................

PM MAIL   Вверх
Experimenter
Дата 17.5.2007, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 8
Всего: 17



Можно подключиться к файлу Excel с помощью OleDB соединения и загружать листы в  Dataset, а дальше делать с ними все, что хочешь.
Конкретный пример имеется, если интересно...



--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
zenit
Дата 18.5.2007, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 2.10.2006

Репутация: нет
Всего: нет



Yes please!буду благодарен
PM MAIL   Вверх
Experimenter
Дата 18.5.2007, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 8
Всего: 17



Да, только забыл, что Бейсик

Код

Imports System
Imports System.Xml
Imports System.Data
Imports System.IO
Imports System.Windows.Forms
...

Private Sub ImportExcelSheet()

...
        Dim ds As DataSet = New DataSet
        Dim OleConn As OleDb.OleDbConnection
        Dim OleCom As OleDb.OleDbCommand
        Dim OleDA As OleDb.OleDbDataAdapter
 
        Dim strSQL As String

                OleConn = New OleDb.OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; " & _
                                                    "Data Source = 'myfile.xls'; " & _
                                                    "Extended Properties = 'Excel 8.0; HDR = Yes; IMEX = 1'")

       ' "HDR = Yes" - импортировать заголовки столбцов из листа Excel, "No" соответственно нет
       ' вот про IMEX точно не помню, бывают значения 0, 1 и 2.
       ' 1 - импортировать все данные как текст,
       ' 0, 2 - определять тип данных по первым 8 строкам (поправьте, если я ошибаюсь)

                strSQL = "SELECT * FROM [Лист1$]"

                OleConn.Open()
                OleCom = New OleDb.OleDbCommand(strSQL, OleConn)
                OleDA = New OleDb.OleDbDataAdapter(OleCom)
                Dim tbl As DataTable = ds.Tables.Add("tableName")
                OleDA.Fill(ds, tbl)
                OleDA.FillSchema(ds, SchemaType.Source, tbl)
                OleConn.Close()                

                Dim dgv As DataGridView = New DataGridView
                dgv.Parent = Me
                dgv.DataSource = tbl
...
End Sub


Это сообщение отредактировал(а) Experimenter - 18.5.2007, 20:11


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0891 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.