Written by: Access Education

Μαθήματα στην Access (Μέρος 5)

This entry is part 5 of 7 in the series Μαθήματα στην Access

Μάθετε την Access με Απλές Ερωτήσεις – Μέρος 5ο

ΜΑΚΡΟΕΝΤΟΛΕΣ (Macros)

Τι είναι οι Μακροεντολές της Access και ποια η χρησιμότητά τους;

Οι μακροεντολές (macros) είναι ένα σύνολο εντολών της Access που εκτελείται κάθε φορά που το καλούμε. Μπορούμε, μέσα στις εντολές που υπάρχουν σε μια μακροεντολή, να προσθέσουμε και συνθήκες (conditions), ώστε η μακροεντολή να μην εκτελείται πάντα, παρά μόνο όταν είναι αληθείς οι συνθήκες που έχουμε θέσει.

Η Access έχει ένα συγκεκριμένο σύνολο εντολών για μακροεντολές, απ’ όπου μπορούμε να επιλέξουμε αυτές που θέλουμε να εκτελέσουμε. Δηλ., δεν μπορούμε να δημιουργήσουμε δικές μας εντολές, αλλά περιοριζόμαστε σ’ αυτές που έχει έτοιμες η Access.

Μερικές απ’ αυτές τις εντολές είναι οι εξής :

Close (κλείνει μια φόρμα, μια αναφορά ή μια βάση δεδομένων),

OpenForm (ανοίγει μια φόρμα),

OpenReport (ανοίγει μια αναφορά),

RunCode (εκτελεί μια συνάρτηση της VBA),

RunMacro (εκτελεί μια άλλη μακροεντολή),

StopMacro (σταματά την τρέχουσα μακροεντολή),

GoToRecord (πηγαίνει σε μια εγγραφή),

GoToControl (ενεργοποιεί ένα χειριστήριο),

Maximize (μεγιστοποιεί το ενεργό παράθυρο),

Beep (παράγει ήχο),

Msgbox (εμφανίζει ένα μήνυμα).

Μια μακροεντολή μπορεί να αποτελείται από μία ή περισσότερες από τις εντολές που είδαμε παραπάνω και μπορούμε ακόμη να ομαδοποιήσουμε και κάποιες εντολές μέσα σε μια μακροεντολή και να τις δώσουμε ένα όνομα. Έτσι, μια μακροεντολή μπορεί να αποτελείται από ομάδες εντολών και μπορούμε να καλέσουμε μόνο αυτή την ομάδα εντολών της μακροεντολής ως εξής :

[ΌνομαΜακροεντολής].[ΟμάδαΜακροεντολής]

Για να έχουμε πρόσβαση στις τιμές των πεδίων (χειριστηρίων) μιας φόρμας, μπορούμε να χρησιμοποιήσουμε τον εξής τύπο :

Forms![ΌνομαΦόρμας]![ΌνομαΧειριστηρίου]

Μπορούμε να συνδέσουμε μια μακροεντολή με ένα κουμπί εντολής μιας φόρμας με τους εξής δύο τρόπους : ή σύρουμε το εικονίδιο της μακροεντολής με το ποντίκι και το αφήνουμε μέσα στη φόρμα στο σημείο που θέλουμε, οπότε το κουμπί εντολής δημιουργείται αυτόματα, ή δημιουργούμε μέσα στη φόρμα ένα κουμπί εντολής και από τις ιδιότητες του κουμπιού εντολής και από τον κατάλογο Event (Συμβάντα) επιλέγουμε την ιδιότητα συμβάντος OnClick και γράφουμε εκεί το όνομα της μακροεντολής που θέλουμε να εκτελεστεί με το πάτημα του ποντικιού.

Η χρησιμότητα των μακροεντολών είναι ότι μπορούν να αντικαταστήσουν πολλές ενέργειες που θα έπρεπε να κάναμε αν δεν υπήρχε η μακροεντολή. Έτσι, ενέργειες που τις κάνουμε συχνά, όπως π.χ. άνοιγμα φόρμας, άνοιγμα αναφοράς, έλεγχος των τιμών κάποιων πεδίων, κ.ά., μπορούμε να τις ενσωματώσουμε μέσα σε μακροεντολές και να τις εκτελούμε μ’ ένα απλό πάτημα του ποντικιού.

Μάθετε την Access με Απλές Ερωτήσεις - Μέρος 5ο

ΥΠΟΜΟΝΑΔΕΣ (Modules)

Τι είναι οι Υπομονάδες της Access και ποια η χρησιμότητά τους;

Οι υπομονάδες (modules) της Access είναι στην ουσία η γλώσσα προγραμματισμού που έχει η Access. Επειδή οι μακροεντολές της Access είναι περιορισμένες σε κάποιες συγκεκριμένες εντολές, υπάρχουν και οι υπομονάδες που έχουν απεριόριστες δυνατότητες.

Με τις υπομονάδες μπορούμε να δημιουργήσουμε όσες μεταβλητές και σταθερές θέλουμε και να ελέγξουμε και να τροποποιήσουμε όποια πεδία των πινάκων της Access θέλουμε. Μπορούμε, ακόμη, πολύ εύκολα, να δημιουργήσουμε συνθήκες, εντολές ροής, εντολές επανάληψης (βρόχους), συναρτήσεις (functions) και υπορουτίνες (subroutines).

Η Visual Basic for Applications (VBA), η γλώσσα προγραμματισμού της Access, δεν διαφέρει και δεν υστερεί σε τίποτα από τις άλλες γλώσσες προγραμματισμού. Κάθε πρόγραμμα (κώδικας) της VBA αποθηκεύεται σε υπομονάδες (modules). Υπάρχουν δύο τρόποι δημιουργίας υπομονάδων : σαν αντικείμενο υπομονάδας ή σαν μέρος ενός αντικειμένου φόρμας ή αναφοράς.

Τι είναι το Αντικείμενο Υπομονάδας;

Είναι ένας κώδικας προγράμματος που περιέχει διαδικασίες που θα μπορούν να χρησιμοποιηθούν από ένα ή περισσότερα ερωτήματα, φόρμες ή αναφορές. Μια διαδικασία που έχει οριστεί σ’ ένα αντικείμενο υπομονάδας, μπορεί να κληθεί από οποιοδήποτε σημείο της εφαρμογής μας.

Μπορούμε να δούμε τα αντικείμενα υπομονάδων μιας βάσης δεδομένων πατώντας στην καρτέλα Modules (Υπομονάδες).

Τι είναι οι Υπομονάδες Φορμών και Αναφορών;

Είναι υπομονάδες που ανήκουν αποκλειστικά σε κάποια φόρμα ή αναφορά. Μπορούμε να διορθώσουμε την υπομονάδα μιας φόρμας ή αναφοράς ανοίγοντας τη φόρμα ή την αναφορά σε Άποψη Σχεδιασμού και πατώντας στο κουμπί Code (Eώδικας) της γραμμής εργαλείων ή επιλέγοντας την εντολή Code από το μενού View.

Περιγράψτε το Παράθυρο Υπομονάδας

Το παράθυρο υπομονάδας δημιουργείται όταν ανοίξουμε μια υπομονάδα σε Άποψη Σχεδιασμού. Η Access μάς τοποθετεί αυτόματα στο τμήμα Declarations (Δηλώσεις), όπου μπορούμε να ορίσουμε εκείνες τις μεταβλητές που θα τις μοιράζονται όλες οι διαδικασίες της υπομονάδας.

Στη γραμμή τίτλου του παραθύρου βλέπουμε το όνομα της υπομονάδας και ακριβώς από κάτω υπάρχουν δύο πλαίσια πτυσσόμενου καταλόγου :

Πλαίσιο Καταλόγου Αντικειμένων (Object)

Όταν δουλεύουμε μ’ ένα αντικείμενο υπομονάδας, εδώ εμφανίζεται μόνο η επιλογή General. Όταν δουλεύουμε με μια υπομονάδα φόρμας ή αναφοράς, επιλέγουμε τη φόρμα ή την αναφορά από τον κατάλογο και τότε στο πλαίσιο καταλόγου διαδικασιών (Proc) εμφανίζονται οι διαθέσιμες διαδικασίες συμβάντων για το αντικείμενο που έχουμε επιλέξει.

Πλαίσιο Καταλόγου Διαδικασιών (Proc)

Όταν δουλεύουμε μ’ ένα αντικείμενο υπομονάδας, εδώ εμφανίζονται με αλφαβητική σειρά όλες οι διαδικασίες που έχει η υπομονάδα. Όταν δουλεύουμε με μια υπομονάδα φόρμας ή αναφοράς, εδώ εμφανίζονται οι διαθέσιμες διαδικασίες συμβάντων που ανήκουν στη φόρμα ή την αναφορά.

Πώς δημιουργώ μια νέα Διαδικασία σε μια Υπομονάδα;

Μέσα στο παράθυρο υπομονάδας, γράφουμε την εντολή Function (Συνάρτηση) ή Sub (Υπορουτίνα) και μετά πατάμε στο κουμπί Εισαγωγής Διαδικασίας (Insert Procedure) της γραμμής εργαλείων ή επιλέγουμε την εντολή Procedure από το μενού Insert. Η Access θα ξεκινήσει τότε αυτόματα μια νέα διαδικασία και θα βάλει στο τέλος την εντολή End Function ή End Sub αντίστοιχα.

Τύποι Δεδομένων της VBA

Οι τύποι δεδομένων της VBA είναι παρόμοιοι με τους τύπους δεδομένων των πεδίων μιας βάσης δεδομένων.

Οι τύποι δεδομένων είναι : Byte, Integer (%), Long (&), Single (!), Double (#), Currency (@), String ($), Boolean, Date Object, Variant και User-defined. Τα σύμβολα μέσα στην παρένθεση είναι ο χαρακτήρας που τοποθετείται μετά το όνομα της μεταβλητής για να προσδιορίσει τον τύπο της.

Εμβέλεια Μεταβλητών και Σταθερών

Μια μεταβλητή ή μια σταθερά μπορεί να είναι “ορατή” σε μία μόνο διαδικασία (τοπική εμβέλεια), σ’ όλες τις διαδικασίες μιας υπομονάδας ή σ’ όλες τις διαδικασίες της βάσης δεδομένων μας (καθολική εμβέλεια).

Για να δηλώσουμε μια καθολική μεταβλητή, χρησιμοποιούμε την εντολή Public στο τμήμα Declarations ενός αντικειμένου υπομονάδας. Για να δηλώσουμε μια καθολική σταθερά, χρησιμοποιούμε τη λέξη Public μαζί με μια εντολή Const στο τμήμα Declarations.

Για να δηλώσουμε μια μεταβλητή ή σταθερά που θα μπορεί να χρησιμοποιηθεί απ’ όλες τις διαδικασίες μιας υπομονάδας, την ορίζουμε στο τμήμα Declarations της υπομονάδας.

Για να δηλώσουμε μια μεταβλητή ή σταθερά που θα μπορεί να χρησιμοποιηθεί μόνο σε μια συγκεκριμένη διαδικασία, την ορίζουμε σαν μέρος της διαδικασίας.

Σε μια βάση δεδομένων, μπορούμε να δώσουμε ίδια ονόματα σε μεταβλητές που ανήκουν σε διαφορετικές υπομονάδες καθώς και σε μεταβλητές που έχουν καθολική ή τοπική εμβέλεια. Στην πρώτη περίπτωση, για να ξεχωρίσουμε τις μεταβλητές, γράφουμε πριν απ’ το όνομά τους, το όνομα της υπομονάδας που ανήκουν. Π.χ., οι μεταβλητές module1.intx και module2.intx έχουν ίδιο όνομα (intx) αλλά ανήκουν σε διαφορετικές υπομονάδες.

Στη δεύτερη περίπτωση, ισχύει ό,τι και σ’ άλλες γλώσσες προγραμματισμού, δηλ. μέσα σε μια διαδικασία υπερισχύουν οι τοπικές μεταβλητές και έξω από τη διαδικασία υπερισχύουν οι καθολικές μεταβλητές.

 

Αν βρήκατε το άρθρο μας χρήσιμο, θέλετε να μείνετε ενημερωμένοι για όλα τα νέα στο τομέα της τεχνολογίας καθώς και σε χρηστικά άρθρα, βοηθήστε μας κάνοντας like στην σελίδα μας στο Facebook πατώντας εδώ

Series Navigation<< Μαθήματα στην Access (Μέρος 4)Μαθήματα στην Access (Μέρος 6) >>
(Visited 425 times, 1 visits today)
Ετικέτες: Last modified: 17/10/2019