Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Обновление MS SQL по средствам VBA / Run-time error - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Обновление MS SQL по средствам VBA / Run-time error (Макросы/Sub)
Обновление MS SQL по средствам VBA / Run-time error
kwazzi Дата: Четверг, 20.11.2014, 09:18 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день,

Прошу помощи, есть простая SQL база, которая требует обновления по средствам загрузки данных через эксель.
Написал код, дает ошибку:

Run-time error '-2147217900 (80040e14)
Automation error

Просьба натолкнуть на верный путь, код прилагаю.
Спасибо.

[vba]
Код
Private Sub cmdUploadARTICLEPLAN_Click()

Dim ID, ART_NR, ART_QTY, WEEK_NR, YEAR_NR As String

With ThisWorkbook.Sheets("ARTICLE_PLAN")

i = .Range("cID").Row + 1

Do Until Trim(.Cells(i, .Range("cID").Column).Value) = ""

ID = Trim(.Cells(i, .Range("cID").Column))
ART_NR = Trim(.Cells(i, .Range("cART_NR_ARTICLE_PLAN").Column))
ART_QTY = Trim(.Cells(i, .Range("cART_QTY_ARTICLE_PLAN").Column))
ART_WEEK_NR = Trim(.Cells(i, .Range("cWEEK_NR_ARTICLE_PLAN").Column))
ART_YEAR_NR = Trim(.Cells(i, .Range("cYEAR_NR_ARTICLE_PLAN").Column))

SqlStr = "select ID from ARTICLE_PLAN where ID = '" & Trim(.Cells(i, .Range("cID").Column)) & "'"

Set rs = SQLSelect(SqlStr)

If rs.EOF Then
Set rs = Nothing
SqlStr = "insert ARTICLE (ID, ART_NR, ART_QTY, WEEK_NR, YEAR_NR) values ('" & ID & "', '" & ART_NR & "', '" & ART_QTY & "', '" & WEEK_NR & "', '" & YEAR_NR & "')"
Set rs = SQLSelect(SqlStr)
Set rs = Nothing
Else
Set rs = Nothing
SqlStr = "update ARTICLE set ART_NR = '" & ART_NR & "', ART_QTY = '" & ART_QTY & "', WEEK_NR = '" & WEEK_NR & "', YEAR_NR = '" & YEAR_NR & "' where ID = '" & ID & "'"
Set rs = SQLSelect(SqlStr)
Set rs = Nothing
End If

i = i + 1
Loop

End With
End Sub
[/vba]


Сообщение отредактировал kwazzi - Четверг, 20.11.2014, 09:20
 
Ответить
СообщениеДобрый день,

Прошу помощи, есть простая SQL база, которая требует обновления по средствам загрузки данных через эксель.
Написал код, дает ошибку:

Run-time error '-2147217900 (80040e14)
Automation error

Просьба натолкнуть на верный путь, код прилагаю.
Спасибо.

[vba]
Код
Private Sub cmdUploadARTICLEPLAN_Click()

Dim ID, ART_NR, ART_QTY, WEEK_NR, YEAR_NR As String

With ThisWorkbook.Sheets("ARTICLE_PLAN")

i = .Range("cID").Row + 1

Do Until Trim(.Cells(i, .Range("cID").Column).Value) = ""

ID = Trim(.Cells(i, .Range("cID").Column))
ART_NR = Trim(.Cells(i, .Range("cART_NR_ARTICLE_PLAN").Column))
ART_QTY = Trim(.Cells(i, .Range("cART_QTY_ARTICLE_PLAN").Column))
ART_WEEK_NR = Trim(.Cells(i, .Range("cWEEK_NR_ARTICLE_PLAN").Column))
ART_YEAR_NR = Trim(.Cells(i, .Range("cYEAR_NR_ARTICLE_PLAN").Column))

SqlStr = "select ID from ARTICLE_PLAN where ID = '" & Trim(.Cells(i, .Range("cID").Column)) & "'"

Set rs = SQLSelect(SqlStr)

If rs.EOF Then
Set rs = Nothing
SqlStr = "insert ARTICLE (ID, ART_NR, ART_QTY, WEEK_NR, YEAR_NR) values ('" & ID & "', '" & ART_NR & "', '" & ART_QTY & "', '" & WEEK_NR & "', '" & YEAR_NR & "')"
Set rs = SQLSelect(SqlStr)
Set rs = Nothing
Else
Set rs = Nothing
SqlStr = "update ARTICLE set ART_NR = '" & ART_NR & "', ART_QTY = '" & ART_QTY & "', WEEK_NR = '" & WEEK_NR & "', YEAR_NR = '" & YEAR_NR & "' where ID = '" & ID & "'"
Set rs = SQLSelect(SqlStr)
Set rs = Nothing
End If

i = i + 1
Loop

End With
End Sub
[/vba]

Автор - kwazzi
Дата добавления - 20.11.2014 в 09:18
SkyPro Дата: Четверг, 20.11.2014, 12:36 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
"insert ARTICLE", насколько я знаю SQL, пишется как "insert INTO ARTICLE"


skypro1111@gmail.com
 
Ответить
Сообщение"insert ARTICLE", насколько я знаю SQL, пишется как "insert INTO ARTICLE"

Автор - SkyPro
Дата добавления - 20.11.2014 в 12:36
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Обновление MS SQL по средствам VBA / Run-time error (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!