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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Excel and VB.net 
V
    Опции темы
Alexey2006
Дата 5.3.2006, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вопрос уже обсуждался но везде с разными ньюансами и я в итоге так и не смог понять как сделать такую простую вещь.

Вопрос следующий:
в программе есть массив данных, его нужно передать в новый excel-файл
есть excel файл нужно переменной в программе присвоить значение из определённой ячейки.

Помогите пожалуйста, очень надо. Я готов отблагодарить советчика материально - допустим купить ему карту оплаты мобильной связи на 5 ед.
PM MAIL   Вверх
Exception
Дата 5.3.2006, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Приветствую smile ! Что значит "передать массив данных в новый файл"? Каких данных? И вообще, можно узнать, что конкретно непонятно?
PM   Вверх
Exception
Дата 5.3.2006, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Может быть, поможет?
http://forum.vingrad.ru/index.php?showtopic=22683
PM   Вверх
Alexey2006
Дата 6.3.2006, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуй Exception
Ссылка примерно то что нужно но чуть чуть не то

Вот суть моей проблемы:
в программе есть двумерный массив , в котором хранятся различные коэффициенты (Single). Его нужно передать в Excel
Потом в excel можно изменить эти коэффициенты и тогда программа будет брать значения этих коэффициентов не из своего массива, а из excel файла.
Сама программа простейшая - "продвинутый калькулятор". Она уже работает но пока не обращается к excel, это как одна из возможностей которую я хочу реализовать.

я понял что для работы с excel необходимо подключить пространнство имён (какое именно, их огромное количество для офиса ?)
также понял что нужно создать oledb соединение и тогда будет возможность обратится к файлу, но все примеры завязаны на dataset я же его не использую.

Вообщем буду премного благодарен за код такой простой программы:
1. кликаем по кнопке она создаёт excel-файл и передаёт button.text в первую ячейку
2. кликаем по второй кнопке она выдаёт messagebox.show("то что написано в заданной ячейке excel файла")

дальше я уже сам смогу разобраться

Кстати я использую vb.net 202005

Благодарю за внимание
PM MAIL   Вверх
Exception
Дата 6.3.2006, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Должен работать такой код:
Код

Imports Microsoft.Office.Interop.Excel

Public Class Main

    Private _xlApplication As New Application
    Private _xlWorkBook As Workbook = _xlApplication.Workbooks.Open("E:\ExcelFile.xls")
    Private _xlWorksheet As Worksheet = CType(_xlWorkBook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet)



    Private Sub Read_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Read.Click
        MessageBox.Show(CStr(_xlWorksheet.Range("A1").Value2), "Текст ячейки A1", MessageBoxButtons.OK, MessageBoxIcon.Information)
    End Sub


    Private Sub Write_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Write.Click
        _xlWorksheet.Range("A1").Value2 = TextToWrite.Text
    End Sub
End Class


PM   Вверх
Alexey2006
Дата 6.3.2006, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



УРА ! Вопрос решён !!!

to Exception:
Код

    Private _xlApplication As New Application
    Private _xlWorkBook As Workbook = _xlApplication.Workbooks.Open("E:\ExcelFile.xls")
    Private _xlWorksheet As Worksheet = CType(_xlWorkBook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet)


здесь VB ругается на:
Private _xlApplication
As Workbook
As Worksheet

почему я не понял, и дальше он на TextToWrite тоже ругается :-(

Но вопрос всё таки решил, Для тех кому интересно:
поставил ComponentOne Studio for .NET 2005 v3
там в комплекте был компонент- С1XLBook с его помощью всё сделал, благо есть примеры правда на С#
вот то что написал я
Код

Public Class Form1

    Private book As New C1.C1Excel.C1XLBook
    Private sheet22 As C1.C1Excel.XLSheet = book.Sheets(0)
    Private cell As C1.C1Excel.XLCell = sheet22(0, 0)
    Private fn As String = "c:\qwe.xls"
    Private style2 As New C1.C1Excel.XLStyle(book)

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        sheet22.Name = "[censored 8] неужели получится"

        style2.Font = New Font("Tahoma", 11, FontStyle.Bold)
        style2.ForeColor = Color.Blue

        cell.Value = "Работает !!!"
        cell.Style = style2

        book.Save(fn)
        System.Diagnostics.Process.Start(fn)
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        book.Load(fn)
        MessageBox.Show(cell.Value)
    End Sub
End Class



to Exception
Благодарю за внимание (хотя если не сложно может скажи почему у меня твой код не заработал, что я ещё не подключил?)!

отправь мне на мыло свой номер мобильного и оператора, я тебе скину смс с кодом карты оплаты, как и обещал
smile

PM MAIL   Вверх
Exception
Дата 6.3.2006, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(Alexey2006 @ 6.3.2006, 16:02 Найти цитируемый пост)
здесь VB ругается на:
Private _xlApplication
As Workbook
As Worksheet

Ты напиши
Код

Imports Microsoft.Office.Interop.Excel

и Microsoft Excel Object Library подключи (Add Reference -> COM). Должно работать.
Цитата(Alexey2006 @ 6.3.2006, 16:02 Найти цитируемый пост)
и дальше он на TextToWrite тоже ругается

Добавь на форму кнопки Write, Read и текстбокс TextToWrite smile
Цитата(Alexey2006 @ 6.3.2006, 16:02 Найти цитируемый пост)
отправь мне на мыло свой номер мобильного и оператора, я тебе скину смс с кодом карты оплаты, как и обещал

Чего уж там smile ? Форум на то и нужен, чтобы бесплатно друг другу помогать...

PM   Вверх
Exception
Дата 6.3.2006, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



http://vingrad.ru/NET-VBNET-003016
уффф... smile

Это сообщение отредактировал(а) Exception - 7.3.2006, 13:16
PM   Вверх
Alexey2006
Дата 6.3.2006, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ну про кноки и Imports Microsoft.Office.Interop.Excel эт понятно smile
а вот Microsoft Excel Object Library я не подключил

Спасибо ещё раз, а за статью отдельно !

теперь всё заработало, и без всяких плагов, Круть ! smile
PM MAIL   Вверх
Exception
Дата 6.3.2006, 20:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Рад помочь, заходи ещё smile !

Это сообщение отредактировал(а) Exception - 7.3.2006, 13:19
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

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

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


 




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


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

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