Proprietati
si metode ale obiectelor ACCESS
Aceasta parte descrie proprietatile si metodele
obiectelor utilizate in Access. Obiectele Form
si Report vor fi descrise in
capitolul 8.
Pentru a obtine lista exhaustiva a obiectelor,
proprietatilor si metodelor, se foloseste asistentul VBA
sau se utilizeaza exploratorulde obiecte.
OBIECTUL APPLICATION
Obiectul Application face
referinta la aplicatia activa Microsoft Access.
Proprietati:
CodeContextObject
|
Returneaza obiectul in care un macro sau un alt cod VBA este in
curs de executie.
|
CurrentObjectName
|
Returneaza numele obiectului baza de date activ (tabel,
interogare, formular, raport, macro, modul).
|
CurrentObjectType
|
Returneaza tipul obiectului de baza de date activ.
|
FeatureInstall
|
Specifica sau determina felul in care Microsoft Access
administreaza apelarile metodelor si proprietatilor
ce necesita instalare.
|
IsCompiled
|
Returneaza o valoare de tip boolean care indica daca
proiectul Visual Basic se gaseste intr-un raport compilat.
|
MenuBar
|
Determina bara de meniuri de folosit pentru baza de date.
|
Name
|
Identifica numele obiectului.
|
Parent
|
Permite realizarea referintei la obiectul parinte.
|
ProductCode
|
Determina identificatorul universal, unic lui Microsoft Access.
|
ShortcutMenuBar
|
Specifica meniul contextual ce apare atunci cand utilizatorul
face clic dreapta.
|
UserControl
|
Determina daca aplicatia Microsoft Access in curs a
fost lansata de utilizator sau de o alta aplicatie.
|
Visible
|
Permite ascunderea aplicatiei.
|
Metode
AccessError
|
Returneaza sirul descriptiv asociat unei erori Microsoft
Access sau a unei erori DAO.
|
AddToFavorites
|
Adauga o adresa de legatura hypertext in dosarul
Favorite (Documents).
|
BuildCriteria
|
Permite construirea usoara a criterilor unui filtru.
|
CloseCurrentDatabase
|
Inchide baza de date in curs pornind de la o alta
aplicatie care a deschis o baza de date cu ajutorul Automation.
|
DefaultWorkspaceClone
|
Creaaza un nou obiect Workspace fara a obliga
utilizatorul sa se reconecteze.
|
Echo
|
Specifica daca Microsoft Access trebuie sa redescrie
ecranul.
|
FollowHyperLink
|
Deschide documentul sau pagina Web specificata de o adresa
hyperlink.
|
GetOption
|
Returneaza valoarea in curs a unei optiuni a
casutei de dialog Options.
|
NewCurrentDataBase
|
Creaza o noua baza de date in fereastra Microsoft Access.
|
OpenCurrentDatabase
|
Deschide o baza existenta ca baza de date
curenta.
|
Quit
|
Permite parasirea Access.
|
RefreshDataBase
Window
|
Permite actualizarea ferestrei Database atunci cand un tabel, o interogare,
un formular, raport, macro sau modul au fost creati, stersi
sau redimensionati.
|
RefreshTitleBar
|
Actualizeaza bara de titlu a Microsoft Access.
|
Run
|
Permite executarea unei proceduri Function sau Sub specificate de
Microsoft Access sau definite de utilizator.
|
RunCommand
|
Permite executarea unei comenzi integrate din meniu sau bara de
instrumente.
|
SetOption
|
Defineste valoarea in casuta de dialog Options.
|
Exemplu
Buton de comanda ce
permite parasirea Access salvand toate obiectele.
Sub cmdQuit_Click()
Application.Quit
acSaveYes
End Sub
Exemplu Codul urmator permite modificarea culorilor implicite a
paginilor de date (continut in DataSheet
al casutei de dialog Options
din Access).
`Culoarea fontului: albastru
inchis
Application.SetOption „Default
Font color”, 4
` Culoarea backgraund-ului: alb
Application.SetOption „Default
Background Color”, 15
`Culoarea bordurilor: albastru
Application.SetOption „Default
Gridlines Color”, 12
OBIECTUL DOCMD
Obiectul DoCmd permite
executarea majoritatii actiunilor pornind din Visual Basic, via
macro-uri.
Fiecarei actiuni macro ii corespunde o metoda.
Argumentele actiuni devin argumentele metodei. Obiectul DoCmd nu dispune de
proprietati proprii.
Observatie:
Actiunile
macro ce corespund metodelor sunt indicate intre paranteze.
Executarea actiunii
CancelEvent
|
Anuleaza un eveniment
|
OpenQuery
|
Deschide o interogare.
|
Quit
|
Paraseste Access.
|
RunCommand
|
Executa o comanda dintr-un meniu sau din bara de meniuri.
|
RunMacro
|
Executa un macro.
|
RunSql
|
Executa o interogare SQL.
|
Datele formularelor
si rapoartelor
ApplyFilter
|
Aplica un filtru unui tabel, formular sau raport.
|
FindNext
|
Continua cautarea.
|
FindRecord
|
Cautarea unei inregistrari.
|
GotoControl
|
Deplasarea focus-ului asupra unui control.
|
GotoPage
|
Deplasarea focus-ului asupra primului control al paginii indicate
din formularul activ.
|
GotoRecord
|
Gaseste inregistrarea.
|
Importarea/Exportarea
datelor
OutputTo
|
Permite exportarea unui obiect Access (tabel, formular) intr-o
alta baza Access sau un alt tip de fisier (Excel, XML).
|
SendObject
|
Trimiterea unui obiect.
|
TransferDatabase
|
Importa sau exporta o baza de date.
|
TransferSpread
Sheet
|
Importa sau exporta o foaie de calcul.
|
TransferText
|
Importa sau exporta codul ASCII.
|
Manipularea obiectelor
Close
|
Inchide un obiect (formular, raport,etc.).
|
CopyObject
|
Permite copierea unui obiect Accesss in aceeasi sau in
alta baza.
|
DeleteObject
|
Sterge un obiect.
|
Maximize
|
Mareste o fereastra.
|
Minimize
|
Micsoreaza o fereastra sau o icoana.
|
MoveSize
|
Deplaseaza sau redimensioneaza o fereastra.
|
OpenForm
|
Deschide un formular.
|
OpenModule
|
Deschide un modul VBA.
|
OpenQuery
|
Deschide o interogare.
|
OpenTable
|
Deschide un tabel.
|
OpenView
|
Deschide o pagina de acces la datele bazei.
|
PrintOut
|
Listeaza.
|
Rename
|
Redenumeste un obiect.
|
RepaintObject
|
|
Requery
|
Actualizeaza datele (relanseaza interogarea sursa a
obiectului).
|
Restore
|
Reda marimea normala ferestrei.
|
Save
|
Salveaza obiectul specificat sau cel activat.
|
SelectObject
|
Selecteaza un obiect al bazei de date.
|
ShowAllRecords
|
Dezactiveaza un filtru si reafiseaza toate
inregistrarile.
|
Diverse
AddMenu
|
Permite crearea unei bare de meniu sau a unui meniu contextual.
|
Beep
|
Emite un sunet.
|
Echo
|
Mascheaza sau afiseaza rezultatul unui macro in
momentul executarii sale.
|
Hourglass
|
Clepsidra cursorului de mouse.
|
SetMenuItem
|
Permite definirea raportului (activat sau neactivat, bifat sau nu),
elementelor din meniul personlizat sau global.
|
SetWarnings
|
Activeaza / Dezactiveaza afisarea mesajelor standard
de avertizare.
|
ShowToolbar
|
Afiseaza/Ascunde o bara de instrumente.
|
Actiuni de care
obiectul DoCmd nu tine cont
MsgBox
|
Functia cutie de mesaje.
|
Shell
|
Executarea aplicatiei.
|
ExecuteCode
|
Apelarea directa a functiei in Visual Basic.
|
SendKeys
|
Utilizarea instructiunii SendKeys.
|
Actiunile StopAllMacros
si StopMacro nu au un
echivalent in Visual Basic.
OBIECTUL SCREEN
Face referinta la un obiect activat fie ca este vorba
de un formular, o pagina de acces la date, un raport sau un control.
Este folosit in principal in procedurile eveniment ale diferitelor
obiecte. Acest obiect nu contine decat proprietati.
Proprietati
ActiveControl
|
Asigura o referinta la un control activ.
|
ActiveDataPage
|
Asigura o referinta la o pagina de acces la
datele active.
|
ActiveForm
|
Asigura o referinta la o foaie activa de date.
|
ActiveReport
|
Asigura o referinta la raportul activ.
|
Application
|
Permite accesul la obiectul Application
si proprietatile acestuia.
|
MousePointer
|
Permite specificarea tipului de cursor de mouse.
|
Parent
|
Asigura o referinta la obiectul cadru al unui
control, unei actiuni, unui subformular, etc.
|
PreviousControl
|
Asigura o referinta la ultimul control activat
inaintea controlului curent.
|
Exemplu
`Afiseaza
numele controlului precedent
Dim ctl As Control
Set ctl = Screen.PreviousControl
MsgBox ctl.Name
`Transforma
cursorul de mouse in clepsidra
Screen.MousePointer = 11
`Reafiseaza
cursorul by default
Screen.MousePointer = 0
`Afiseaza
numele formularului activ
Dim frm As Form
Set frm = Screen.ActiveForm
MsgBox frm.Name
`Modifica
titlul formularului
frm.Caption = „ Formular de plata”
OBIECTUL FILESEARCH
Acest obiect permite cautarea fisierelor in functie de
un ansamblu de criterii si obtinerea informatiilor relevante
despre aceste fisiere.
Proprietati:
Creator
|
Returneaza codul de 4 caractere al aplicatiei in care
obiectul specificat a fost creat (nu se poate folosi decat in mediul
Macintosh).
|
FileName
|
Returneaza sau defineste numele fisierului ce trebuie
cautat.
|
FileType
|
Returneaza sau defineste tipul fisierului ce trebuie
cautat.
|
LastModified
|
Returneaza sau defineste o constanta care indica
timpul scurs de la ultima modificare a fisierului.
|
LockIn
|
Returneaza sau defineste folderul care se bazeaza
cautarea specificata.
|
MatchText
Exactly
|
Arata daca cautarea specificata nu se bazeaza
decat pe fisierele ale caror corp de texte sau
proprietati contine exact cuvantul sau fraza specificata.
|
SearchSubFolders
|
Arata daca cautarea include toate subfolderele
folderului specificat.
|
TextOrProperty
|
Returneaza sau defineste cuvantul sau fraza de cautat
in corpul de texte sau in proprietatile fisierului.
|
Obiecte si
colectii
FoundFiles
|
Obiect reprezentand lista de fisiere returnate de cautare
|
PropertyTests
|
Colectie de obiecte PropertyTests
reprezentand ansamblul criteriilor cautarii.
|
SearchFolders
|
Colectie de obiecte ScopeFolder
reprezentand ansamblul folderelor cautare.
|
Metode
Execute
|
Lanseaza cautarea fisierelor specificate
|
NewSearch
|
Stabileste valorile implicite a tuturor criteriilor de
cautare.
|
RefreshScopes
|
Actualizeaza lista de obiecte ScopeFolder (foldere) disponibile.
|
Exemplu:
Codul urmator permite
stocarea intr-un tablou a listei de fisiere
Excel intr-un director din My
Documents.
Dim strFileName()As String
Dim i,j As Integer
With Application.FileSearch
.NewSearch
.LookIn
= „C:My Documents”
.SearchSubFolders
= True
.FileName
= „xls”
.MatchTextExactly
= True
.Execute
j
= .FoundFiles.Count
ReDim
strFileName(j)
For
i = 1 To j
strFileName(i)
= .FoundFiles(i)
Next
i
End With
COLECTIA REFERENCES
Colectia References
contine obiectele References ce
corespund biblotecilor de obiecte provenite din alte aplicatii.
Pentru a adauga (sau sterge) o referinta la o
biblioteca de obiecte, se alege optiunea References din meniul Tools.
Fereastra urmatoare permite selectarea referintelor dorite:
Proprietati
Count
|
Determina numarul obiectelor referentiate
|
Parent
|
Nu este folosit.
|
Metode
AddFromFile
|
Creeaza o referinta la o biblioteca pornind de
la numele unui fisier.
|
AddFromGuid |
Creeaza o referinta la o biblioteca pornind de
la GUID-ul sau (identificator global unic in registrul Windows).
|
Item
|
Returneaza o referinta in functie de
pozitia sa in colectia References.
|
Remove
|
Sterge un obiect referinta din colectia References.
|
Proprietatile
obiectului Reference
BuiltIn
|
Arata daca o referinta implicita este
necesara pentru buna
functionare in Access.
|
FullPath
|
Returneaza o cale de acces si numele fisierului bibliotecii
referentiate.
|
Guid
|
Returneaza GUID-ul, identificatorul bibliotecii in registrul
Windows.
|
IsBroken
|
Arata daca o referinta valida este
atribuita obiectului in registrul Windows.
|
Kind
|
Indica tipul de referinta.
|
Major
|
Indica principalul numar de versiune al aplicatiei
careia ii este asociata o referinta.
|
Minor
|
Indica numarul minor de versiune al aplicatiei.
|
Name
|
Numele referintei.
|
Exemplu:
Dim Ref As References
Afiseaza
numarul total de referinte
MsgBox(„Nr. total de referinte
este:” & references.Count
`Parcurge
referintele, afiseaza numele si calea de acces ale acestora
For Each ref In Application.References
MsgBox(„nume:”
& ref.name & „ „ vbCr & vbCr
& _ ref.FullPath
`Sterge
referintele neobligatorii pentru Access
If Not ref.BuiltIn Then
References.Remove
ref
EndIf
Next ref
`Adauga
biblioteca de obiecte Excel
Application.References.AddFromFile
„Excel9.olb”
`Adauga
biblioteca de obiecte Word
Application.References.AddFromFile
„MsWord.olb”
COLECTIA PRINTERS
Contine obiectele Printer ce reprezinta fiecare
imprimanta disponibila in sistem.
Observatie:
Obiectul
Printer nu exista in versiunile precedente ale Access.
Proprietatile
obiectului Printer
BottomMargin
|
Impreuna cu proprietatile TopMargin, RightMargin
si LeftMargin, aceasta proprietate permite specificarea marginilor
unei pagini.
|
ColorMode
|
Arata daca imprimanta trebuie sa listeze in culori
(acPRCMColor) sau alb-negru (acPRCMMonochrome)
|
ColumnSpacing
|
Indica dispunerea pe verticala a sectiunilor Detail a
unui formular.
|
Copies
|
Indica numarul copiilor de listat.
|
DataOnly
|
Permite doar listarea datelor unui tabel sau interogarea in modul
DataSheets.
|
DeviceName
|
Indica numele perifericului.
|
DriverName
|
Indica numele driverului utilizat de imprimanta.
|
Duplex
|
Indica felul in care imprimanta administreaza listarea
fata-verso.
|
Orientation
|
Indica orientare imprimarii (acPRORPortrait sau acPRORLandscape).
|
PaperBin
|
Indica PaperBin ce
trebuie folosit de catre imprimanta.
|
PaperSize
|
Indica marimea hartiei.
|
Port
|
Indica portul la care este conectata imprimanta.
|
PrintQuality
|
Indica rezolutia folosita de imprimanta pentru
listare.
|
Celelate proprietati (ColumnSpacing,
RowSpacing, ItemSizeHeight, etc.) permit formatarea din sectiunea Detail a unui formular sau raport.
4.10. Recomandari pentru optimizarea codului
VBA
Pentru a optimiza functionarea VBA, unele
comenzi pot accelera viteza de executie a codului creat.
Intotdeauna
variabilele trebuie sa fie declarate in mod explicit.
Tipul
de variabile trebuie sa fie intotdeauna cat mai explicit posibil.
Pentru
a crea referinta proprietatilor, controalelelor si
obiectelor de acces la date, se preconizeaza variabilele.
Cuvantul
rezervat Me trebuie folosit pentru a
se face referinta la un formular sau un raport in cadrul procedurii
eveniment.
Se
recomanda folosirea constantelor cat de frecvent posibil.
Modulele
trebuie sa fie organizate pentru a nu supraincarca memoria. Un modul
este salvat doar daca una din procedurile sale este apelata de alte
coduri.
Codul
trebuie compilat regulat.