ign="justify"> Тут ми вибираємо БД і таблицю, яку хочемо імпортувати в Excel. Відкриється ще одне вікно, але я думаю, що в ньому нічого змінювати не потрібно. br/>В
Натискаємо кнопку В«ГотовоВ» і Excel просить нас вказати область, в яку буде записана таблиця.
В
Натискаємо В«ОКВ», отримуємо результат:
. Створення макросів
У 2 частини програми я покажу, як зв'язати таблицю Excel з базою даних SQL Server. У результаті буде можливий введення запиту у форму і запис результату на лист в Excel. Всі дії я не буду описувати детально, як у першій частині. p align="justify"> Послідовність дій:
) починаємо запис макросу в Excel
) завантажуємо таблицю в Excel, як було написано в 1 частини
) завершуємо запис макросу
) заходимо в макрос, редагуємо там код на VBA, додаємо форму, пов'язуємо все це. Головне, що мене гальмувало і через що не працювало все, це те, що у властивості В«CommandTypeВ» потрібно поміняти параметр з xlCmdTable на < b align = "justify"> xlCmdSql.
Після виконання всіх цих дій все готово. Далі я покажу демонстрацію роботи з створеним мною макросом. Заходимо в документ В«Книга1В», в якому знаходиться макрос. Одразу при відкритті система нам пропонує ввести запит у форму, яка зображена нижче:
В
У цій формі можна вводити будь-які запити до таблиці Author. Найпростіший запит SELECT * FROM Author. Вводимо його у форму, і якщо все нормально, то система видає повідомлення, показане нижче:
В
Це повідомлення означає, що все виконано успішно. Результат відображено на малюнку нижче:
Також у формі запиту можна написати запити і складніше, наприклад SELECT * FROM Author WHERE AVT_KOD>.
Результат:
Додаток 1
Код макросу на VBA
Auto_Open (). ShowSubмой_макрос (SQLstr)
'
'мой_макрос Макрос
'Смоленцев Олександр 273 (1) група. 26.05.2011
'очищення аркуша
'-
'. Select (В«Ліст3В»). Select. Select. ClearContents (В«A1В»). Select
'
'-
'ActiveSheet. ListObjects. Add (SourceType: = 0, Source: = Array (_
В«OLEDB; Provider = SQLOLEDB.1; Integrated Security = SSPI; Persist Security Info = True; Data Source = ACER-PC SQLEXPRESS; Use Procedure for PrepareВ» _
_
В«= 1; Aut...