Доступ до бази даних VBA - відкриття, підключення, вхід у систему та інше

Цей підручник покаже, як використовувати VBA для відкриття бази даних Access. Він також продемонструє, як створити логін для доступу до бази даних - перевірити, чи існує ім’я користувача та пароль у таблиці tblUsers бази даних.

База даних відкритого доступу

Ця функція VBA відкриє базу даних Access:

Загальнодоступна функція OpenAccessDatabase (strDBPath як рядок) Якщо не IsNull (strDBPath) Тоді оболонка "MSACCESS.EXE" "" & strDBPath & "" "", Функція завершення vbNormalFocus

Викликати функцію можна так:

Приватний суб OpenAccessDatabase_Example () Виклик OpenAccessDatabase ("C: \ temp \ Database1.accdb") Кінець Sub

Підключіться до бази даних Access

Крім того, ви можете використовувати цей код, який створить новий екземпляр Access, відкриє базу даних і призначить базу даних до змінної db:

 Dim objAccess As Access.Application Dim db як DAO.Database Set objAccess = New Access.Application Set db = objAccess.DBEngine.OpenDatabase (strDBPath, False, False)

або скористайтесь цією функцією, що містить наведений вище код, щоб відкрити базу даних до змінної:

Загальнодоступна функція Connect_To_AccessDB (strDBPath As String) Як DAO.Database Dim objAccess As Access.Application Dim db As DAO.Database Set objAccess = New Access.Application Set db = objAccess.DBEngine.OpenDatabase (strDBPath, FalD_Barse_False) Функція завершення

Ви можете викликати функцію та взаємодіяти з базою даних за допомогою такої процедури:

Private Sub Connect_To_AccessDB_Example () Dim AccessDB Як DAO.Database 'Приклад для призначення бази даних до змінної Встановіть AccessDB = Connect_To_AccessDB ("c: \ temp \ TestDB.accdb") AccessDB.Execute ("створіть таблицю tbl_test3 (номер, ім'я char , прізвище char) ") ​​'Приклад для призначення закриття зовнішньої бази даних AccessDB.Закрити Встановити AccessDB = нічого' Приклад видалення файлу зовнішньої бази даних (.accdb) 'Вбити (" c: \ temp \ TestDB.accdb ")' Приклад закрити Access 'DoCmd.Quit End Sub

Доступ до входу в базу даних

Ця функція VBA використовує логін, перевіряючи введене ім'я користувача та пароль у таблиці tblUsers. Для того, щоб ця функція працювала, вам потрібно створити таблицю tblUsers з полями Пароль та Ім'я користувача.

Публічна функція UserLogin (ім'я користувача як рядок, пароль як рядок) 'Перевірте, чи існує користувач у таблиці tblUsers поточної бази даних. Dim CheckInCurrentDatabase Як Boolean CheckInCurrentDatabase = Істина Якщо Nz (Ім'я користувача, "") = "" Тоді MsgBox "Ви повинні ввести ім'я користувача.", VbInformation Вихід Функція ElseIf Nz (Пароль, "")) "" Тоді MsgBox "Ви повинні ввести Пароль " ), 0) = 0 Тоді MsgBox "Недійсне ім'я користувача!", VbExclamation Функція виходу ElseIf Nz (Пароль, "") Nz (DLookup ("Пароль", "tblUsers", "[Ім'я користувача] = '" & Nz (Ім'я користувача, " ") &" '")," ") Тоді MsgBox" Недійсний пароль! ", Функція виходу vbExclamation ElseIf DCount (" Ім'я користувача "," tblUsers "," [Ім'я користувача] =' "& Nz (Ім'я користувача," ") &" '")> 0 Тоді Dim strPW As String strPW = Nz (DLookup (" Пароль "," tblUsers "," [Ім'я користувача] =' "& Nz (Ім'я користувача," ") &" '")," ") Якщо Nz (Пароль, "") = strPW Тоді "Встановіть ім'я користувача та пароль як глобальні змінні TempVars.Add" CurrentUserName ", Nz (UserName," ") TempVars.Add" Cur rentUserPassword ", Nz (Пароль," ") MsgBox" Успішно зареєстрований ", vbExclamation Закінчити Якщо Закінчити, якщо" Встановити ім'я користувача та пароль як глобальні змінні TempVars. Додати "CurrentUserName", Nz (Ім'я користувача, "") TempVars.Add "CurrentUserPassword ", Nz (Пароль," ") MsgBox" Увійшли в систему успішно ", vbExclamation End If End Функція

Викликати функцію можна так:

Приватний суб UserLogin_Example () Виклик VBA_Access_General.UserLogin ("Ім'я користувача", "пароль") Кінець Sub

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave