Εισαγωγή στον προγραμματισμό στην Access

Όταν δημιουργείτε μια νέα βάση δεδομένων, συνήθως ξεκινάτε δημιουργώντας διάφορα αντικείμενα βάσης δεδομένων, όπως πίνακες, φόρμες και αναφορές. Τελικά, φτάνετε σε ένα σημείο όπου πρέπει να γράψετε κώδικα προγραμματισμού για να αυτοματοποιήσετε ορισμένες διαδικασίες και να συνδέσετε τα αντικείμενα της βάσης δεδομένων σας. Αυτό το άρθρο παρέχει κατευθύνσεις για τα εργαλεία προγραμματισμού στην Access.

Σε αυτό το άρθρο

Τι είναι ο προγραμματισμός;

Πρέπει να χρησιμοποιήσω μακροεντολές ή κώδικα VBA;

Χρήση του Οδηγού κουμπιών εντολής για την εκτέλεση κοινών εργασιών προγραμματισμού

Κατανόηση των μακροεντολών

Κατανόηση του κώδικα VBA

Μετατροπή μακροεντολών σε κώδικα VBA

Τι είναι ο προγραμματισμός;

Στην Access, προγραμματισμός είναι η διαδικασία προσθήκης λειτουργικότητας στη βάση δεδομένων σας, χρησιμοποιώντας μακροεντολές της Access ή κώδικα της Visual Basic for Applications (VBA). Για παράδειγμα, έστω ότι έχετε δημιουργήσει μια φόρμα και μια αναφορά και θέλετε να προσθέσετε ένα κουμπί εντολής στη φόρμα, στο οποίο όταν κάνετε κλικ ανοίγει η αναφορά. Προγραμματισμός, σε αυτή την περίπτωση, είναι η διαδικασία δημιουργίας μιας μακροεντολής ή διαδικασίας VBA και, στη συνέχεια, ο ορισμός του συμβάντος OnClick στο κουμπί εντολής έτσι ώστε με το κλικ στο κουμπί εντολής να εκτελείται η μακροεντολή ή η διαδικασία. Για μια απλή λειτουργία, όπως το άνοιγμα μιας αναφοράς, μπορείτε να χρησιμοποιήσετε τον Οδηγό κουμπιού εντολής που θα κάνει τα πάντα, μπορείτε όμως και να απενεργοποιήσετε τον οδηγό και να κάνετε τον προγραμματισμό μόνοι σας.

ΣΗΜΕΙΩΣΗ : Πολλά προγράμματα του Microsoft Office, χρησιμοποιούν τον όρο "μακροεντολή" όταν αναφέρονται σε κώδικα VBA. Αυτό μπορεί να προκαλέσει σύγχυση στους χρήστες της Access, καθώς στην Access ο όρος "μακροεντολή" αναφέρεται σε μια καθορισμένη συλλογή ενεργειών μακροεντολών που μπορείτε να συγκεντρώσετε χρησιμοποιώντας τη Λειτουργία δόμησης μακροεντολών. Οι ενέργειες των μακροεντολών της Access είναι μόνο ένα υποσύνολο των εντολών που είναι διαθέσιμες στη VBA. Η Λειτουργία δόμησης μακροεντολών σάς παρέχει ένα πιο δομημένο περιβάλλον από ότι η Επεξεργασία της Visual Basic, δίνοντάς σας τη δυνατότητα να προσθέτετε στοιχεία προγραμματισμού σε στοιχεία ελέγχου και αντικείμενα χωρίς να χρειάζεται να μάθετε να γράφετε κώδικα VBA. Θα πρέπει να θυμάστε ότι στα άρθρα της Βοήθειας της Access, οι μακροεντολές της Access αναφέρονται ως μακροεντολές. Αντίθετα, ο κώδικας VBA αναφέρεται ως VBA, κώδικας, συνάρτηση ή διαδικασία. Ο κώδικας VBA περιέχεται σε λειτουργικές μονάδες κλάσης (που περιλαμβάνονται σε μεμονωμένες φόρμες ή αναφορές και συνήθως περιέχουν κώδικα μόνο για αυτά τα αντικείμενα), καθώς και σε λειτουργικές μονάδες (που δεν είναι συνδεδεμένες με συγκεκριμένα αντικείμενα και συνήθως περιέχουν κώδικα "γενικής χρήσης" που μπορεί να χρησιμοποιηθεί σε ολόκληρη τη βάση δεδομένων).

Τα αντικείμενα (όπως οι φόρμες και οι αναφορές) και τα στοιχεία ελέγχου (όπως τα κουμπιά εντολών και τα πλαίσια κειμένου) έχουν διάφορες ιδιότητες συμβάντων στις οποίες μπορείτε να προσαρτήσετε μακροεντολές ή διαδικασίες. Κάθε ιδιότητα συμβάντος σχετίζεται με ένα συγκεκριμένο συμβάν, όπως το κλικ με το ποντίκι, το άνοιγμα μιας φόρμας ή η τροποποίηση των δεδομένων σε ένα πλαίσιο κειμένου. Τα συμβάντα μπορούν επίσης να ενεργοποιούνται από παράγοντες εκτός της Access, όπως τα συμβάντα συστήματος ή από μακροεντολές ή διαδικασίες που είναι προσαρτημένες σε άλλα συμβάντα. Η βάση δεδομένων σας μπορεί να γίνει περίπλοκη εάν προσθέσετε πολλές μακροεντολές ή διαδικασίες σε πολλές ιδιότητες συμβάντων πολλών αντικειμένων, αλλά, στις περισσότερες περιπτώσεις, μπορείτε να επιτύχετε τα αποτελέσματα που θέλετε χρησιμοποιώντας ελάχιστο προγραμματισμό.

Αρχή της σελίδας

Πρέπει να χρησιμοποιήσω μακροεντολές ή κώδικα VBA;

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

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

Προκειμένου να ενισχύσετε την ασφάλεια της βάσης δεδομένων σας, καλό είναι να προσπαθείτε να χρησιμοποιείτε μακροεντολές όποτε μπορείτε και να χρησιμοποιείτε κώδικα VBA μόνο για τις εργασίες που δεν είναι δυνατό να εκτελεστούν με τη χρήση ενεργειών μακροεντολών. Επιπλέον, καλό είναι να δοκιμάσετε να χρησιμοποιείτε μόνο ενέργειες μακροεντολών που δεν απαιτούν να θεωρείται μια βάση δεδομένων ως αξιόπιστη προκειμένου να εκτελεστεί. Ο περιορισμός της χρήσης των ενεργειών μακροεντολών με αυτόν τον τρόπο επιτρέπει στους χρήστες να είναι βέβαιοι ότι η βάση δεδομένων δεν διαθέτει κώδικα προγραμματισμού που θα μπορούσε να βλάψει τα δεδομένα ή άλλα αρχεία στον υπολογιστή τους.

Σημεία προσοχής για τις μακροεντολές

Ξεκινώντας από την έκδοση της Access 2010, η Access περιλαμβάνει πολλές νέες ενέργειες μακροεντολών που σας επιτρέπουν να δημιουργείτε πιο ισχυρές μακροεντολές από ότι με προηγούμενες εκδόσεις της Access. Για παράδειγμα, μπορείτε πλέον να δημιουργείτε και να χρησιμοποιείτε καθολικές προσωρινές μεταβλητές χρησιμοποιώντας ενέργειες μακροεντολών καθώς και να χειρίζεστε τα σφάλματα πιο ομαλά χρησιμοποιώντας νέες ενέργειες μακροεντολών χειρισμού σφαλμάτων. Σε παλαιότερες εκδόσεις της Access, αυτές οι δυνατότητες ήταν διαθέσιμες μόνο με τη χρήση της VBA. Επίσης, μπορείτε να ενσωματώσετε μια μακροεντολή απευθείας στην ιδιότητα συμβάντος ενός αντικειμένου ή στοιχείου ελέγχου. Η ενσωματωμένη μακροεντολή γίνεται μέρος του αντικειμένου ή του στοιχείου ελέγχου και παραμένει μαζί με το αντικείμενο ή το στοιχείο ελέγχου, εάν αυτό μετακινηθεί ή αντιγραφεί.

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

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

  • Αντιστοίχιση ενέργειας ή συνόλου ενεργειών σε ένα πλήκτρο. Αυτό απαιτεί τη δημιουργία μιας ομάδας μακροεντολών με το όνομα AutoKeys.

  • Εκτέλεση μιας ενέργειας ή μιας σειράς ενεργειών όταν ανοίγει για πρώτη φορά μια βάση δεδομένων. Αυτό απαιτεί τη δημιουργία μιας ομάδας μακροεντολών με το όνομα AutoExec.

    ΣΗΜΕΙΩΣΗ :  Η μακροεντολή AutoExec εκτελείται πριν από οποιεσδήποτε άλλες μακροεντολές ή κώδικα VBA, ακόμη και αν έχετε ορίσει μια φόρμα εκκίνησης στο παράθυρο διαλόγου Επιλογές της Access και έχετε προσαρτήσει μια μακροεντολή ή κώδικα VBA στο συμβάν OnOpen ή OnLoad της συγκεκριμένης φόρμας.

Για περισσότερες πληροφορίες σχετικά με τον τρόπο δημιουργίας μακροεντολών, ανατρέξτε στην ενότητα Κατανόηση των μακροεντολών.

Σημεία προσοχής για τη VBA

Θα πρέπει να χρησιμοποιήσετε προγραμματισμό σε VBA αντί για μακροεντολές αν θέλετε να κάνετε οποιοδήποτε από τα εξής:

  • Χρήση ενσωματωμένων συναρτήσεων ή δημιουργία δικών σας συναρτήσεων    Η Access περιλαμβάνει πολλές ενσωματωμένες συναρτήσεις, όπως η συνάρτηση IPmt, η οποία υπολογίζει την αποπληρωμή τόκων. Μπορείτε να χρησιμοποιήσετε αυτές τις ενσωματωμένες συναρτήσεις για την εκτέλεση υπολογισμών χωρίς να χρειάζεται να δημιουργήσετε πολύπλοκες παραστάσεις. Με τη χρήση κώδικα VBA, μπορείτε επίσης να δημιουργήσετε τις δικές σας συναρτήσεις για να πραγματοποιήσετε υπολογισμούς που υπερβαίνουν τις δυνατότητες μιας παράστασης ή για να αντικαταστήσετε σύνθετες παραστάσεις. Επίσης, μπορείτε να χρησιμοποιήσετε τις συναρτήσεις που δημιουργείτε σε παραστάσεις για να εφαρμόσετε μια κοινή λειτουργία σε περισσότερα από ένα αντικείμενα.

  • Δημιουργία ή χειρισμός αντικειμένων    Στις περισσότερες περιπτώσεις, θα διαπιστώσετε ότι είναι ευκολότερο να δημιουργήσετε και να τροποποιήσετε ένα αντικείμενο στην προβολή σχεδίασης του συγκεκριμένου αντικειμένου. Σε ορισμένες περιπτώσεις, ωστόσο, μπορεί να θέλετε να διαχειριστείτε τον ορισμό ενός αντικειμένου με κώδικα. Με τη χρήση VBA, μπορείτε να χειριστείτε όλα τα αντικείμενα σε μια βάση δεδομένων, επιπλέον της ίδιας της βάσης δεδομένων.

  • Εκτέλεση ενεργειών επιπέδου συστήματος    Μπορείτε να εκτελέσετε την ενέργεια RunApp σε μια μακροεντολή για να εκτελέσετε ένα άλλο πρόγραμμα (όπως το Microsoft Excel) μέσα από την Access, αλλά δεν μπορείτε να χρησιμοποιήσετε μια μακροεντολή για να κάνετε τίποτε άλλο εκτός της Access. Με τη χρήση VBA, μπορείτε να ελέγξετε για να δείτε εάν υπάρχει ένα αρχείο στον υπολογιστή, να χρησιμοποιήσετε αυτοματισμό ή δυναμική ανταλλαγή δεδομένων (DDE) για την επικοινωνία με άλλα προγράμματα που βασίζονται σε Microsoft Windows, όπως το Excel και να καλέσετε συναρτήσεις σε βιβλιοθήκες δυναμικής σύνδεσης (DLL) των Windows.

  • Χειρισμός εγγραφών μία προς μία    Μπορείτε να χρησιμοποιήσετε VBA για να μετακινηθείτε μέσα σε ένα σύνολο εγγραφών, κατά μία εγγραφή κάθε φορά και να εκτελέσετε μια λειτουργία σε κάθε εγγραφή. Αντίθετα, οι μακροεντολές λειτουργούν με ολόκληρα σύνολα εγγραφών κάθε φορά.

Αρχή της σελίδας

Χρήση του Οδηγού κουμπιών εντολής για την εκτέλεση κοινών εργασιών προγραμματισμού

Εάν θέλετε να προσθέσετε ένα κουμπί εντολής σε μια φόρμα, ο Οδηγός κουμπιών εντολής μπορεί να σας βοηθήσει να ξεκινήσετε με τον προγραμματισμό. Ο οδηγός σάς βοηθά να δημιουργήσετε ένα κουμπί εντολής που εκτελεί μια συγκεκριμένη εργασία. Σε ένα αρχείο της Access (.accdb), ο οδηγός δημιουργεί μια μακροεντολή που ενσωματώνεται στην ιδιότητα OnClick του κουμπιού εντολής. Σε ένα αρχείο .mdb ή .adp, ο οδηγός δημιουργεί κώδικα VBA, επειδή οι ενσωματωμένες μακροεντολές δεν είναι διαθέσιμες σε αυτές τις μορφές αρχείων. Και στις δύο περιπτώσεις, μπορείτε, στη συνέχεια, να τροποποιήσετε ή να βελτιώσετε τη μακροεντολή ή τον κώδικα VBA σύμφωνα με τις ανάγκες σας.

  1. Στο Παράθυρο περιήγησης, κάντε δεξί κλικ στη φόρμα στην οποία θέλετε να προσθέσετε το κουμπί εντολής και, στη συνέχεια, κάντε κλικ στην επιλογή Προβολή σχεδίασης.

  2. Στην καρτέλα Σχεδίαση, κάντε κλικ στο κάτω βέλος για να εμφανίσετε τη συλλογή Στοιχεία ελέγχου και βεβαιωθείτε ότι είναι ενεργοποιημένη η επιλογή Χρήση "Οδηγών στοιχείων ελέγχου".

  3. Στην καρτέλα Σχεδίαση, στη συλλογή Στοιχεία ελέγχου, κάντε κλικ στην επιλογή Κουμπί.

  4. Στο πλέγμα σχεδίασης φόρμας, κάντε κλικ στο σημείο όπου θέλετε να τοποθετηθεί το κουμπί εντολής.

    Ξεκινά ο Οδηγός κουμπιών εντολής.

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

  6. Κάντε κλικ είτε στην επιλογή Κείμενο είτε στην επιλογή Εικόνα, ανάλογα με το αν θέλετε να εμφανίζεται κείμενο ή μια εικόνα στο κουμπί εντολής.

    • Εάν θέλετε να εμφανίζεται κείμενο, μπορείτε να επεξεργαστείτε το κείμενο στο πλαίσιο δίπλα στην επιλογή Κείμενο.

    • Εάν θέλετε να εμφανίζεται μια εικόνα, ο οδηγός προτείνει μια εικόνα από τη λίστα. Εάν θέλετε να επιλέξετε μια διαφορετική εικόνα, επιλέξτε το πλαίσιο ελέγχου Εμφάνιση όλων των εικόνων για να εμφανίσετε μια λίστα με όλες τις εικόνες κουμπιού εντολής που παρέχει η Access ή κάντε κλικ στο κουμπί Αναζήτηση για να επιλέξετε μια εικόνα που είναι αποθηκευμένη σε κάποιο άλλο σημείο.

      Κάντε κλικ στο κουμπί Επόμενο.

  7. Πληκτρολογήστε ένα χαρακτηριστικό όνομα για το κουμπί εντολής. Αυτό το βήμα είναι προαιρετικό και αυτό το όνομα δεν εμφανίζεται στο κουμπί εντολής. Ωστόσο, είναι καλή ιδέα να προσθέσετε ένα χαρακτηριστικό όνομα, έτσι ώστε όταν θέλετε να κάνετε αναφορά στο κουμπί εντολής αργότερα (για παράδειγμα, εάν ορίζετε τη σειρά tab για τα στοιχεία ελέγχου στη φόρμα σας), θα είναι πολύ πιο εύκολο να ξεχωρίσετε τα κουμπιά εντολών. Εάν το κουμπί εντολής κλείνει τη φόρμα, για παράδειγμα, μπορείτε να το ονομάσετε cmdClose ή CommandClose.

  8. Κάντε κλικ στο κουμπί Τέλος.

    Η Access τοποθετεί το κουμπί εντολής στη φόρμα.

  9. Εάν θέλετε να δείτε τι "προγραμμάτισε" ο οδηγός για εσάς, ακολουθήστε τα παρακάτω προαιρετικά βήματα:

    1. Εάν το φύλλο ιδιοτήτων δεν εμφανίζεται ήδη, πατήστε F4 για να το εμφανίσετε.

    2. Στο φύλλο ιδιοτήτων, κάντε κλικ στην καρτέλα Συμβάντα.

    3. Στο πλαίσιο ιδιότητας Με το κλικ, κάντε κλικ στο κουμπί Δόμηση Εικόνα κουμπιού .

      Η Access ξεκινά τη Λειτουργία δόμησης μακροεντολών και εμφανίζει τη μακροεντολή που δημιουργήθηκε από τον οδηγό. Μπορείτε να επεξεργαστείτε τη μακροεντολή εάν θέλετε (για περισσότερες πληροφορίες σχετικά με τον τρόπο για να επεξεργαστείτε μια μακροεντολή, ανατρέξτε στην ενότητα Κατανόηση των μακροεντολών). Όταν ολοκληρώσετε τη διαδικασία, στην καρτέλα Σχεδίαση, στην ομάδα Κλείσιμο, κάντε κλικ στην επιλογή Κλείσιμο για να κλείσετε τη Λειτουργία δόμησης μακροεντολών. Εάν η Access σας ζητήσει να αποθηκεύσετε τις αλλαγές και να ενημερώσετε την ιδιότητα, κάντε κλικ στο κουμπί Ναι για να αποθηκεύσετε τις αλλαγές ή στο κουμπί Όχι για να απορρίψετε τις αλλαγές.

  10. Στην καρτέλα Σχεδίαση, στην ομάδα Προβολές, κάντε κλικ στην επιλογή Προβολή και έπειτα στην επιλογή Προβολή φόρμας. Κάντε κλικ στο νέο κουμπί εντολής για να επιβεβαιώσετε ότι λειτουργεί σύμφωνα με τα αναμενόμενα.

Αρχή της σελίδας

Κατανόηση των μακροεντολών

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

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

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

Η Λειτουργία δόμησης μακροεντολών της Access 2010

ΣΗΜΕΙΩΣΗ : Σημειώστε ότι η Λειτουργία δόμησης μακροεντολών στην Access 2007 ήταν διαφορετική από την παραπάνω εικόνα. Στην Access 2007, η Λειτουργία δόμησης μακροεντολών ήταν μια σειρά γραμμών και στηλών που ανέφεραν τις διάφορες ενέργειες της μακροεντολής.

Για να εμφανίσετε τη Λειτουργία δόμησης μακροεντολών:

  • Στην καρτέλα Δημιουργία, στην ομάδα Μακροεντολές & Κώδικας, κάντε κλικ στην επιλογή Μακροεντολή.

Αρχή της σελίδας

Κατανόηση του κώδικα VBA

Όπως και οι μακροεντολές, η VBA σάς επιτρέπει να προσθέτετε αυτοματοποίηση και άλλες λειτουργίες σε μια εφαρμογή της Access. Μπορείτε να επεκτείνετε τη VBA χρησιμοποιώντας στοιχεία ελέγχου τρίτων, καθώς και να συντάξετε τις δικές σας συναρτήσεις και διαδικασίες για τις δικές σας ανάγκες.

Ένας γρήγορος τρόπος για να ξεκινήσετε με τον προγραμματισμό σε VBA είναι να δημιουργήσετε πρώτα μια μακροεντολή της Access και, στη συνέχεια, να τη μετατρέψετε σε κώδικα VBA. Μπορείτε να βρείτε οδηγίες για αυτό στην ενότητα Μετατροπή μακροεντολών σε κώδικα VBA. Αυτή η δυνατότητα δημιουργεί μια νέα λειτουργική μονάδα VBA που εκτελεί τις ισοδύναμες πράξεις με τη μακροεντολή. Ανοίγει επίσης την Επεξεργασία της Visual Basic, για να μπορείτε να αρχίσετε να τροποποιείτε τη διαδικασία. Όταν εργάζεστε στην Επεξεργασία της Visual Basic, μπορείτε να κάνετε κλικ σε λέξεις-κλειδιά και να πατήσετε το πλήκτρο F1 για να ξεκινήσετε τη Βοήθεια της Access για προγραμματιστές και να μάθετε περισσότερα σχετικά με κάθε λέξη-κλειδί. Στη συνέχεια, μπορείτε να εξερευνήσετε τη Βοήθεια της Access για προγραμματιστές και να ανακαλύψετε νέες εντολές που θα σας βοηθήσουν να εκτελέσετε τις εργασίες προγραμματισμού που θέλετε.

Αρχή της σελίδας

Μετατροπή μακροεντολών σε κώδικα VBA

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

ΣΗΜΕΙΩΣΗ : Μπορείτε να προσθέσετε κώδικα της Visual Basic for Applications (VBA) σε μια βάση δεδομένων Web, ωστόσο, δεν μπορείτε να εκτελέσετε αυτόν τον κώδικα όταν η βάση δεδομένων εκτελείται σε ένα πρόγραμμα περιήγησης Web. Εάν η βάση δεδομένων Web περιέχει κώδικα VBA, πρέπει πρώτα να ανοίξετε τη βάση δεδομένων Web χρησιμοποιώντας την Access, για να εκτελέσετε τον κώδικα. Για να εκτελέσετε εργασίες προγραμματισμού σε μια βάση δεδομένων Web, χρησιμοποιήστε μακροεντολές της Access.

Μετατροπή μακροεντολών που είναι προσαρτημένες σε μια φόρμα ή αναφορά

Αυτή η διαδικασία μετατρέπει σε VBA οποιεσδήποτε μακροεντολές στις οποίες γίνονται αναφορές από (ή είναι ενσωματωμένες σε) μια φόρμα ή αναφορά (ή σε οποιοδήποτε από τα στοιχεία ελέγχου της) και προσθέτει τον κώδικα VBA στη λειτουργική μονάδα κλάσης της φόρμας ή της αναφοράς. Η λειτουργική μονάδα κλάσης γίνεται μέρος της φόρμας ή της αναφοράς και μετακινείται μαζί με τη φόρμα ή την αναφορά, σε περίπτωση μετακίνησης ή αντιγραφής.

  1. Στο Παράθυρο περιήγησης, κάντε δεξί κλικ στη φόρμα ή την αναφορά και, στη συνέχεια, κάντε κλικ στην επιλογή Προβολή σχεδίασης.

  2. Στην καρτέλα Σχεδίαση, στην ομάδα Εργαλεία, κάντε κλικ σε μία από τις επιλογές Μετατροπή μακροεντολών φόρμας σε Visual Basic ή Μετατροπή μακροεντολών έκθεσης σε Visual Basic.

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

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

  4. Για να δείτε και να επεξεργαστείτε τον κώδικα VBA:

    1. Με τη φόρμα ή την αναφορά ανοιχτή σε προβολή σχεδίασης, εάν το φύλλο ιδιοτήτων δεν εμφανίζεται ήδη, πατήστε F4 για να το εμφανίσετε.

    2. Στην καρτέλα Συμβάν του φύλλου ιδιοτήτων, κάντε κλικ σε οποιοδήποτε πλαίσιο ιδιότητας που εμφανίζει την ένδειξη [Διαδικασία συμβάντος] και, στη συνέχεια, κάντε κλικ στο κουμπί δόμησης Εικόνα κουμπιού . Για να δείτε τις ιδιότητες συμβάντων για ένα συγκεκριμένο στοιχείο ελέγχου, κάντε κλικ στο στοιχείο ελέγχου για να το επιλέξετε. Για να δείτε τις ιδιότητες συμβάντων για ολόκληρη τη φόρμα ή την αναφορά, επιλέξτε Φόρμα ή Αναφορά από την αναπτυσσόμενη λίστα στο επάνω μέρος του φύλλου ιδιοτήτων.

      Η Access ανοίγει την Επεξεργασία της Visual Basic και εμφανίζει τη διαδικασία συμβάντος στη δική της λειτουργική μονάδα κλάσης. Μπορείτε να κάνετε κύλιση προς τα επάνω ή προς τα κάτω για να δείτε οποιαδήποτε άλλη διαδικασία που βρίσκεται στην ίδια λειτουργική μονάδα κλάσης.

Μετατροπή καθολικών μακροεντολών

  1. Στο παράθυρο περιήγησης, κάντε δεξί κλικ στη μακροεντολή που θέλετε να μετατρέψετε και, στη συνέχεια, επιλέξτε Προβολή σχεδίασης.

  2. Στην καρτέλα Σχεδίαση, στην ομάδα Εργαλεία, κάντε κλικ στην επιλογή Μετατροπή μακροεντολών σε Visual Basic.

  3. Στο παράθυρο διαλόγου Μετατροπή μακροεντολής, επιλέξτε τα στοιχεία που θέλετε και, στη συνέχεια, κάντε κλικ στην επιλογή Μετατροπή.

    Η Access μετατρέπει τη μακροεντολή και ανοίγει την Επεξεργασία της Visual Basic.

  4. Για να δείτε και να επεξεργαστείτε τον κώδικα VBA:

    1. Στην Επεξεργασία της Visual Basic, εάν το παράθυρο "Εξερεύνηση έργου" δεν εμφανίζεται, στο μενού Προβολή, κάντε κλικ στην επιλογή Εξερεύνηση έργου.

    2. Αναπτύξτε τη δεντρική δομή κάτω από το όνομα της βάσης δεδομένων στην οποία εργάζεστε.

    3. Στην περιοχή Λειτουργικές μονάδες, κάντε διπλό κλικ στη λειτουργική μονάδα Μακροεντολή που μετατράπηκε- όνομα μακροεντολής.

      Η Επεξεργασία της Visual Basic ανοίγει τη λειτουργική μονάδα.

Προσάρτηση μιας συνάρτησης VBA σε μια ιδιότητα συμβάντος

Όταν μετατρέπετε μια καθολική μακροεντολή σε VBA, ο κώδικας VBA τοποθετείται σε μια τυπική λειτουργική μονάδα. Σε αντίθεση με μια λειτουργική μονάδα κλάσης, μια τυπική λειτουργική μονάδα δεν αποτελεί μέρος μιας φόρμας ή αναφοράς. Πιθανότατα θα θέλετε να συσχετίσετε τη συνάρτηση με μια ιδιότητα συμβάντος σε μια φόρμα, αναφορά ή στοιχείο ελέγχου έτσι ώστε ο κώδικας να εκτελείται ακριβώς όποτε όπου θέλετε. Για να το κάνετε αυτό, μπορείτε να αντιγράψετε τον κώδικα VBA σε μια λειτουργική μονάδα κλάσης και, στη συνέχεια, να τη συσχετίσετε με μια ιδιότητα συμβάντος ή να κάνετε μια ειδική κλήση από την ιδιότητα συμβάντος στην τυπική λειτουργική μονάδα, χρησιμοποιώντας την παρακάτω διαδικασία.

  1. Στην Επεξεργασία της Visual Basic, σημειώστε το όνομα της συνάρτησης. Για παράδειγμα, εάν μετατρέψετε μια μακροεντολή με το όνομα MyMacro, το όνομα της συνάρτησης θα είναι MyMacro().

  2. Κλείστε την Επεξεργασία της Visual Basic.

  3. Στο παράθυρο περιήγησης, κάντε δεξί κλικ στη φόρμα ή την αναφορά με την οποία θέλετε να συσχετίσετε τη συνάρτηση και, στη συνέχεια, κάντε κλικ στην επιλογή Προβολή σχεδίασης.

  4. Κάντε κλικ στο στοιχείο ελέγχου ή στην ενότητα με τα οποία θέλετε να συσχετίσετε τη συνάρτηση.

  5. Εάν το φύλλο ιδιοτήτων δεν εμφανίζεται ήδη, πατήστε F4 για να το εμφανίσετε.

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

  7. Στο πλαίσιο ιδιότητας, πληκτρολογήστε ένα σύμβολο ίσον (=) ακολουθούμενο από το όνομα της συνάρτησης, για παράδειγμα, =MyMacro(). Μην παραλείψετε να συμπεριλάβετε τις παρενθέσεις.

  8. Αποθηκεύστε τη φόρμα ή την έκθεση κάνοντας κλικ στο κουμπί Αποθήκευση στη γραμμή εργαλείων γρήγορης πρόσβασης.

  9. Στο παράθυρο περιήγησης, κάντε διπλό κλικ στη φόρμα ή την αναφορά και ελέγξτε τη για να δείτε εάν ο κώδικας εκτελείται με τον αναμενόμενο τρόπο.

Γνωρίζετε πλέον τα βασικά βήματα για να προσθέσετε κώδικα VBA στη βάση δεδομένων σας. Αυτό το άρθρο περιγράφει μόνο τα βασικά στοιχεία για να ξεκινήσετε. Υπάρχουν πολλά εξαιρετικά βιβλία αναφοράς και ηλεκτρονικές πηγές που μπορούν να σας βοηθήσουν να αναπτύξετε δεξιότητες προγραμματισμού.

Αρχή της σελίδας

Αναπτύξτε τις δεξιότητές σας
Εξερευνήστε το περιεχόμενο της εκπαίδευσης
Αποκτήστε πρώτοι τις νέες δυνατότητες
Γίνετε μέλος του Office Insider

Σας βοήθησαν αυτές οι πληροφορίες;

Σας ευχαριστούμε για τα σχόλιά σας!

Σας ευχαριστούμε για τα σχόλιά σας! Φαίνεται ότι μπορεί να είναι χρήσιμο να συνδεθείτε με έναν από τους συνεργάτες υποστήριξης του Office.

×