Piekļūstiet VBA datu bāzei - atveriet, pieslēdzieties, piesakieties un veiciet citas darbības

Šī apmācība parādīs, kā izmantot VBA, lai atvērtu piekļuves datu bāzi. Tas arī parādīs, kā izveidot pieteikumvārdu, lai piekļūtu datu bāzei - pārbaudot, vai lietotājvārds un parole pastāv datu bāzes tblUsers tabulā.

Atveriet piekļuves datu bāzi

Šī VBA funkcija atvērs piekļuves datu bāzi:

Publiskā funkcija OpenAccessDatabase (strDBPath kā ​​virkne) Ja nav IsNull (strDBPath), tad Shell "MSACCESS.EXE" "" & strDBPath & "" ", vbNormalFocus beigu funkcija

Funkciju var izsaukt šādi:

Privāta apakšnodaļa OpenAccessDatabase_Example () Zvanīt OpenAccessDatabase ("C: \ temp \ Database1.accdb") Beigu apakšnodaļa

Izveidojiet savienojumu ar Access datu bāzi

Varat arī izmantot šo kodu, lai izveidotu jaunu piekļuves gadījumu, atvērtu datu bāzi un piešķirtu datubāzi mainīgajam db:

 Dim objAccess kā Access.Application Dim db kā DAO.Database Set objAccess = New Access.Application Set db = objAccess.DBEngine.OpenDatabase (strDBPath, False, False)

vai izmantojiet šo funkciju, kas satur iepriekš minēto kodu, lai atvērtu datu bāzi mainīgajam:

Publiskā funkcija Connect_To_AccessDB (strDBPath kā ​​virkne) Kā DAO.Database Dim objAccess As Access.Application Dim db Kā DAO.Database Set objAccess = New Access.Application Set db = objAccess.DBEngine.OpenDatabase (strDBPath, False_FD_Access) Beigu funkcija

Varat izsaukt šo funkciju un mijiedarboties ar datu bāzi, izmantojot šādu procedūru:

Private Sub Connect_To_AccessDB_Example () Dim AccessDB Kā DAO.Database 'Piemērs datu bāzes piešķiršanai mainīgajam Set AccessDB = Connect_To_AccessDB ("c: \ temp \ TestDB.accdb") AccessDB.Execute ("izveidot tabulu tbl_test3 (numura numurs, vārds) , uzvārds char) ") ​​'Piemērs, lai piešķirtu slēgt ārēju datu bāzi AccessDB.Close Set AccessDB = Nekas' Piemērs ārējās datu bāzes faila dzēšanai (.accdb) 'Kill (" c: \ temp \ TestDB.accdb ")' Piemērs lai aizvērtu piekļuvi DoCmd. Quit End Sub

Piekļuve datubāzes pieteikšanās

Šī VBA funkcija izmanto pieteikšanos, pārbaudot ievadīto lietotājvārdu un paroli salīdzinājumā ar tabulas tblUsers. Lai šī funkcija darbotos, jums jāizveido tabula tblUsers ar laukiem Parole un Lietotājvārds.

Publiskās funkcijas UserLogin (lietotājvārds kā virkne, parole kā virkne) pārbaudiet, vai lietotājs pastāv pašreizējās datu bāzes tblUsers tabulā. Dim CheckInCurrentDatabase Kā Būla CheckInCurrentDatabase = True Ja Nz (UserName, "") = "" Tad MsgBox "Jums jāievada lietotājvārds.", VbInformation Exit Function ElseIf Nz (Parole, "") = "" Tad MsgBox "Jums jāievada Parole " ), 0) = 0 Tad MsgBox "Nederīgs lietotājvārds!", VbExclamation Exit Function ElseIf Nz (Password, "") Nz (DLookup ("Password", "tblUsers", "[UserName] = '" & Nz (UserName, ") ") &" '")," ") Tad MsgBox" Nederīga parole! ", VbExclamation Exit Function ElseIf DCount (" UserName "," tblUsers "," [UserName] = "" & Nz (UserName, "") & " '")> 0 Tad dim strPW kā virkne strPW = Nz (DLookup (" Parole "," tblUsers "," [UserName] =' "& Nz (UserName," ") &" '")," ") Ja Nz (Parole, "") = strPW Pēc tam 'Iestatiet lietotājvārdu un paroli kā globālās versijas TempVars. Pievienojiet "CurrentUserName", Nz (UserName, "") TempVars.Add "Cur rentUserPassword ", Nz (parole," ") MsgBox" Veiksmīgi pieteicies ", vbExclamation End If End End If Else 'Iestatiet lietotājvārdu un paroli kā globālās versijas TempVars.Add" CurrentUserName ", Nz (UserName," ") TempVars.Add" CurrentUserPassword ", Nz (parole," ") MsgBox" Veiksmīgi pieteicies ", vbEksclamation End If End Function

Funkciju var izsaukt šādi:

Privāts apakšlietotājs UserLogin_Example () Zvanīt uz VBA_Access_General.UserLogin ("Lietotājvārds", "parole") Beigu apakšnodaļa

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave