powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Форма с кнопкой для загрузки данных из Excel в SQL Server
8 сообщений из 8, страница 1 из 1
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840695
saari
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! Получил задание от разработать форму на Excel для автоматической загрузки данных из Excel в таблицу SQL Server 2008. С кнопкой. В таблице 4 столбца.
К сожалению, с VBA практически не сталкивался, похожих примеров не нашел. Может уже есть готовый шаблон для такого задания?
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840725
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пакетная загрузка средствами самого SQL не рассматривается?
Какое количество записей в таблице?
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840732
saari
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro, записей будет от нескольких десятков до нескольких тысяч. Смысл в том, чтобы пользователь вставил данные в таблицу Excel, нажал на кнопку и эти данные загрузились в таблицу на SQL Server
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840757
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто несколько тысяч записей по одной будут загружаться.... небыстро, полминуты-минуту
Быстрее затягивать средствами самого sql

Если время не так критично - вопрос, каким образом будет доступ к sql - прямой INSERT в таблицу, хранимка?
С состоянии ли вы написать запрос на вставку?
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840793
saari
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro, я так понял, что всё должно быть на VBA, т.е. будет вставляться инсертом. Тысяч записей не будет, я уточнил, максимум пара сотен, время процедуры не критично
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840850
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Dim cn As Object
Set cn = CreateObject("ADODB.Connection")
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ThisWorkbook.FullName + ";Extended Properties='Excel 8.0'"

'тут в цикле:
cn.Execute "INSERT......"

cn.Close: Set cn = Nothing



Если вы используете для подключения OLE DB и параметр HDR=Yes, то обращаться к полям нужно по именам, оказавшимся в первой строке диапазона-источника. Можете выставить HDR=No, тогда имена полей будут F1, F2, F3 и т.д.
Не забывайте, что при использовании параметра IMEX=1 все данные преобразуются в текст!

http://support.microsoft.com/kb/257819/en
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38840857
saari
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro, спасибо огромное! Буду пробовать!
...
Рейтинг: 0 / 0
Форма с кнопкой для загрузки данных из Excel в SQL Server
    #38841606
saari
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
получилось, наконец!
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Sub Кнопка1_Щелчок()

Dim cn As ADODB.Connection
With ActiveWorkbook.ActiveSheet

Set cn = New ADODB.Connection
cn.connectionstring = "DATABASE=Analitics;DRIVER=SQL Server;SERVER=NAV-BACKUP;"
cn.Open

i_row = 2
Do While Cells(i_row, 1).Value <> ""
cn.Execute "INSERT INTO tbl_dbv_RNaO VALUES('" & .Cells(i_row, 1) & "', '" & Format(.Cells(i_row, 2).Value, "YYYY-MM-DD hh:mm:ss") & "', '" & .Cells(i_row, 3) & "')"
i_row = i_row + 1
Loop

cn.Close
Set cn = Nothing

End With

End Sub
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Форма с кнопкой для загрузки данных из Excel в SQL Server
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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