Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Макрос: Экспорт их Excel MS SQL и обатно / 4 сообщений из 4, страница 1 из 1
22.03.2013, 17:26
    #38195266
Takayavot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Макрос: Экспорт их Excel MS SQL и обатно
Добрый день!
Есть таблица в MS SQL, в которую периодически нужно закидывать данные их Excel (структуры таблиц одинаковы)
А потом обратно тянуть их из MS SQL, чтобы обновлять на их основе сводную таблицу в Excel

Интересуют код экспорта данных и импорта на примере любой простейшей таблицы из 2-3х стоблцов
Огромное спасибо за помощь!
...
Рейтинг: 0 / 0
22.03.2013, 18:25
    #38195376
Макрос: Экспорт их Excel MS SQL и обатно
TakayavotДобрый день!
Есть таблица в MS SQL, в которую периодически нужно закидывать данные их Excel (структуры таблиц одинаковы)
А потом обратно тянуть их из MS SQL, чтобы обновлять на их основе сводную таблицу в Excel

Интересуют код экспорта данных и импорта на примере любой простейшей таблицы из 2-3х стоблцов
Огромное спасибо за помощь!
Если именно со стороны Экселя на МС СКЛ, то, наверное, ч-з АДО фигачить циклом по строчно по листу экселя.
Но какое-то подозрительное решение.
Для по аналогии можно я из акцесс переделал, cn должна будет выглядеть по мскуээльски.
Код: vbnet
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.
41.
Public Const Provider As String = "Provider=SQLOLEDB.1;"
Public Const Security As String = 
Public Const DBName As String = 
Public Const ServerName As String = 
Dim Cnct As String, Src As String
Public Connection As ADODB.Connection
Public Recordset As ADODB.Recordset
Sub OpenConnection()
Set Connection = New ADODB.Connection
Cnct = Provider & _
                    Security & DBName & ServerName
Connection.Open ConnectionString:=Cnct
'MsgBox "Connection Established"
End Sub
Sub SomeExecute
Set wsData = ThisWorkBook.WorkSheets("data1")
records_count = wsData.Range("A1").CurrentRegion.Rows.Count
Set cn = Connection
Set rs = New ADODB.Recordset
src = "tblTemp" ' данные заливаются во временную таблицу
With rs
    
.Open src, cn, adOpenDynamic, adLockOptimistic

For i = 2 To records_count
'Циклом по строке фигачу рекордсет
.AddNew
.Fields("DatenTime") = wsData.Cells(i, 1).Value
.Fields("OutPhone") = wsData.Cells(i, 2).Value
.Fields("InPhone") = wsData.Cells(i, 3).Value
.Fields("Customer") = wsData.Cells(i, 4).Value
.Fields("t1") = wsData.Cells(i, 5).Value
.Fields("t2") = wsData.Cells(i, 7).Value
.Fields("Status") = wsData.Cells(i, 8).Value
.Fields("Operator") = wsData.Cells(i, 6).Value
.Update
        
Next i
.Close
End With
End Sub


ЗЫ Может, ч-з Connection.Execute можно?
-----
Не люблю Progress OpenEdge.
...
Рейтинг: 0 / 0
22.03.2013, 18:39
    #38195393
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Макрос: Экспорт их Excel MS SQL и обатно
В предыдущем моем сообщении получился не очень связанный микс из обращения из экселя к МС СКЛ и получения из листа экселя данных циклом, имена переменных не совпадают.
Но смысл, наверное, должен быть понятен.
А сводная таблица сама по себе может обновляться - безотносительно источника данных.
Если ее источник данных не меняется.
Код: vbnet
1.
ActiveSheet.PivotTables("СводнаяТаблица1").PivotCache.Refresh
...
Рейтинг: 0 / 0
23.03.2013, 14:10
    #38195875
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Макрос: Экспорт их Excel MS SQL и обатно
Takayavot,

В Excel импортировать надо через CopyFromRecordset.
Какая версия MSSQL используется ?
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Макрос: Экспорт их Excel MS SQL и обатно / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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