Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Word и sql server 2005 Добавлено: 06.06.07 09:29  

Автор вопроса:  Dream
В общем, у меня есть вордовский документ с кнопочкой, по нажатию на которую данные из этого документа должны добавляться в базу данных SqlServer2005. Как мне соединяться с базой из VBA? Или можно сделать это с помощью vb.net?
Заранее благодарю!

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #1 Добавлено: 06.06.07 10:54
Точно так же, как в VB6.
Причём здесь .net, мне совершенно не ясно.

Ответить

Номер ответа: 2
Автор ответа:
 Dream



Вопросов: 2
Ответов: 6
 Профиль | | #2 Добавлено: 06.06.07 11:50
К сожаленью, с vb6 не работала вообще, только в vb.net. Можно, если есть, кусок кода со связью с бд? В msdn'e что-то есть, но там используется Application.OfficeDataSourceObject, я пробовала запустить, но ругается компилятор...

Ответить

Номер ответа: 3
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #3 Добавлено: 06.06.07 13:15
Искать в MSDN про ADODB.Connection и ADODB.Command.

Ответить

Номер ответа: 4
Автор ответа:
 Dream



Вопросов: 2
Ответов: 6
 Профиль | | #4 Добавлено: 06.06.07 13:43
Ладно, буду с vb.net лучше работать.
Еще вопрос:
У меня из формы на .net по кнопке открывается документ, в котором есть vbшные контролы.
  Dim appWord As New Word.Application
  Dim docWord As New Word.Document
docWord =  appWord.Documents.Open(DirectCast("C:\temp\test.doc",  Object))
     appWord.Visible = True

Как считать значение с них, (например, с textbox'ов), по событию на форме?

Ответить

Номер ответа: 5
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #5
Добавлено: 06.06.07 14:25
Думаю, использовать .NET - не лучшее решение. Лучше действительно
в VBA использовать ADODB для доступа к SQL Server.

Вот кусочек кода из VB6, возможно поможет.

    Dim Conn As New ADODB.Connection
    Conn.Open ConnString
    
    Dim Comm As New ADODB.Command
    Comm.ActiveConnection = Conn
    
    Dim SQL As String
    SQL = "Select id_host_om_managers From host_om_managers Where login=? And password=?"
    
    Comm.CommandText = SQL
    Comm.Parameters.Append Comm.CreateParameter("@login", adVarChar, adParamInput, 10, Login)
    Comm.Parameters.Append Comm.CreateParameter("@password", adVarChar, adParamInput, 10, Password)
    
    Dim RS As New Recordset
    RS.Open Comm
    
    'Если менеджер с такими логин/пароль не найден, то...
    If RS.EOF Or RS.BOF Then
        'Ставим ManagerID=0
        ManagerID = 0
    Else
        'Если найден, то устанавливаем ManagerID
        ManagerID = CInt(RS(0).Value)
        'Переключаем менеджера в Online
        SetState True
    End If
    
    RS.Close
    Conn.Close
    
    Set RS = Nothing
    Set Conn = Nothing

Ответить

Номер ответа: 6
Автор ответа:
 Dream



Вопросов: 2
Ответов: 6
 Профиль | | #6 Добавлено: 06.06.07 15:49
Спасибо, Павел, это похоже на то, что мне нужно! Постараюсь добить...
=)

Ответить

Номер ответа: 7
Автор ответа:
 Dream



Вопросов: 2
Ответов: 6
 Профиль | | #7 Добавлено: 07.06.07 12:05
Спасибо большое! Все получилось! =)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам