Μακροεντολές. Τύποι και μέθοδοι δημιουργίας μακροεντολών. Πώς γράφονται οι μακροεντολές (ενέργειες) Αντιστοίχιση μακροεντολής σε ένα κουμπί

Το κύριο σύνολο εργαλείων Microsoft Access, το οποίο συζητήσαμε στα προηγούμενα κεφάλαια του βιβλίου, απευθύνεται σε χρήστες που δεν μιλούν γλώσσες προγραμματισμού. Για προγραμματιστές, αυτά τα εργαλεία έχουν προστεθεί μακροεντολές(μικρά προγράμματα στη μακροεντολή της γλώσσας του συστήματος Access) και ενότητες(διαδικασίες στη Visual Basic for Application, VBA). Με τη βοήθειά τους, μπορείτε να επεκτείνετε σημαντικά τη λειτουργικότητα της εφαρμογής που δημιουργείτε και να την προσαρμόσετε στις ανάγκες συγκεκριμένων χρηστών. Σε αυτό το κεφάλαιο, θα παρουσιάσουμε ένα από αυτά τα εργαλεία, τις μακροεντολές και μία από τις γλώσσες προγραμματισμού της Access, τη γλώσσα μακροεντολών. Θα σας παρουσιάσουμε τις ενότητες και τη γλώσσα VBA σεχρ. 13 ,

Έτσι, θα συζητήσουμε τις ακόλουθες ερωτήσεις:

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

Χρήση μακροεντολών σε μια βάση δεδομένων της Microsoft Access

Χρησιμοποιώντας μακροεντολές, μπορείτε να εκτελέσετε σχεδόν όλες τις ενέργειες σε αντικείμενα της Access που περιγράφηκαν στα προηγούμενα κεφάλαια.

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

Τραπέζι Το 11.1 περιέχει μια λίστα μακροεντολών της Microsoft Access 2002, ομαδοποιημένες ανά κατηγορίες: εργασία με δεδομένα σε φόρμες και αναφορές. εκτέλεση εντολών, μακροεντολών, διαδικασιών και ερωτημάτων · εργαστείτε με αντικείμενα. εισαγωγή / εξαγωγή δεδομένων και αντικειμένων και άλλων. Η κατηγορία "Άλλο" περιέχει όλες τις μακροεντολές που σας επιτρέπουν να επηρεάσετε τη διεπαφή της εφαρμογής.

Κατηγορία Ραντεβού Μακροεντολή
Εργασία με δεδομένα σε φόρμες και αναφορές Δειγματοληψία δεδομένων Εφαρμογή φίλτρου
Περιήγηση στα δεδομένα NextRecord (FindNext) FindRecord (GoToControl) Στη σελίδα (GoToPage) ForRecord (GoToRecord)
Ανανέωση δεδομένων ή οθόνης Ενημέρωση (Requery) ShowAllRecords (ShowAllRecords)
Εκτέλεση Εκτέλεση εντολής Εκτέλεση εντολής (RunComraand)
Εκτέλεση μακροεντολής, διαδικασίας ή ερωτήματος RunMacro RunCode OpenQuery 3anyc έως 3anpoca SQL (RunSQL)
Εκτέλεση άλλης εφαρμογής Εκκίνηση εφαρμογής (RunApp)
Ματαίωση εκτέλεσης Ακύρωση συμβάντος (CancelEvent) Διακοπή AllMacros (StopAllMacros) StopMacro (StopMacro)
Αποσυνδεθείτε από τη Microsoft Access Εγκαταλείπω
Εισαγωγή εξαγωγή Διαβίβαση αντικειμένων Microsoft Access σε άλλες εφαρμογές Έξοδος σε μορφή (OutputTo) SendObject (SendObject)
Μετατροπή μορφής δεδομένων Μεταφορά βάσης δεδομένων TransferSQLDat abase Transfer Spreadsheet TransferText
Εργασία με αντικείμενα Αντιγραφή, μετονομασία και αποθήκευση ενός αντικειμένου CopyObject CopyDatabase Αρχείο Μετονομασία Αποθήκευσης
Αλλα Εμφάνιση ή απόκρυψη της ενσωματωμένης ή αποκλειστικής γραμμής εργαλείων Ακούγοντας ένα μπιπ Γραμμή εργαλείων (ShowToolbar) σήμα (ανεμιστήρας)

Πίνακας 11.1.Μακροεντολές Microsoft Access 2002

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

Σε σύγκριση με την προηγούμενη έκδοση της Access, η Microsoft Access 2002 έχει τρεις νέες μακροεντολές:

TransferSQLDatabase - μεταφέρει μια βάση δεδομένων Microsoft SQL Server 7.0 και νεότερη σε άλλο διακομιστή.

CopyDatabaseFile (CopyDatabaseFile) - αντιγράφει την τρέχουσα βάση δεδομένων Microsoft SQL Server 7.0 και νεότερη που είναι συνδεδεμένη στο έργο Access.

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

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

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

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

Ωστόσο, η χρήση μακροεντολών έχει επίσης ορισμένα μειονεκτήματα, τα οποία είναι κατάλληλα εδώ.

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

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

Δημιουργία μακροεντολών

Η Microsoft Access διαθέτει ένα ειδικό εργαλείο για τη δημιουργία μακροεντολών - το Macro Design. Ας εξετάσουμε τη διαδικασία δημιουργίας μιας μακροεντολής χρησιμοποιώντας τον Κατασκευαστή.

Κατασκευαστής μακροεντολών

Ανοιχτό παράθυρο Κατασκευαστής μακροεντολών(Macro Design) υπάρχουν δύο τρόποι για να δημιουργήσετε μια νέα μακροεντολή:

  1. Αναπτύξτε τη λίστα μακροεντολών στο παράθυρο Βάση δεδομένων(Βάση δεδομένων) κάνοντας αριστερό κλικ στη συντόμευση Μακροεντολές(Μακροεντολές) και κάντε κλικ στο Δημιουργώ ένα(Νέο) στο πάνω μέρος του παραθύρου (Εικ. 11.1).
  2. Κάντε κλικ στο κάτω βέλος στο κουμπί Νέο αντικείμενο(Νέο αντικείμενο) στη γραμμή εργαλείων Βάση δεδομένων(Βάση δεδομένων) και επιλέξτε στοιχείο Μακροεντολή(Μακροεντολή).

Το παράθυρο Macro Constructor είναι δομημένο παρόμοιο με το παράθυρο Table Constructor, δηλαδή χωρίζεται οριζόντια σε δύο μέρη: τον πίνακα περιγραφής και τον πίνακα ορισμάτων.

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

Η σειρά στη στήλη Ενέργεια είναι ένα σύνθετο πλαίσιο από το οποίο μπορείτε να επιλέξετε τη μακροεντολή που θέλετε.

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

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

Στην εικ. 11.1 απεικονίζει την επιλογή της μακροεντολής ApplyFilter. Ο πίνακας ορισμάτων έχει δύο πεδία που σας επιτρέπουν να καθορίσετε το όνομα του φίλτρου και τα κριτήρια για την επιλογή εγγραφών. Για να ορίσετε μια συνθήκη για την επιλογή εγγραφών, μπορείτε να χρησιμοποιήσετε το Expression Builder (δείτε την ενότητα "Δημιουργία εκφράσεων με χρήση του Expression Builder" κεφάλαιο 4).

Σύκο. 11.1.Πίνακας Macro Builder και Arguments

Αυτή η μακροεντολή μπορεί να χρησιμοποιηθεί σε μια φόρμα ή αναφορά για τον περιορισμό του αριθμού των εγγραφών που εμφανίζονται.

Σχόλιο

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

Υπάρχει ένας άλλος πολύ απλός τρόπος εισαγωγής μιας μακροεντολής. Ας υποθέσουμε ότι θέλετε να δημιουργήσετε μια μακροεντολή για να ανοίξετε τη φόρμα Πελάτες στην εφαρμογή Northwind. Για αυτό στο παράθυρο Βάση δεδομένων(Βάση δεδομένων) πρέπει να κάνετε κλικ στη συντόμευση Έντυπα(Forms) και, στη συνέχεια, χρησιμοποιώντας τη γραμμή εργαλείων (μέθοδος 2), ανοίξτε το παράθυρο Κατασκευαστής μακροεντολών(Macro Design) και σύρετε τη φόρμα Πελάτες στο πεδίο Action του παραθύρου Macro Designer.

Συμβουλή

Για εύκολη μεταφορά και απόθεση αντικειμένων από το παράθυρο βάσης δεδομένων στη φόρμα, επιλέξτε την εντολή Window, Tile Vertically για να τακτοποιήσετε τα παράθυρα δίπλα-δίπλα στην οθόνη.

Στη συνέχεια, η μακροεντολή OpenForm θα εμφανιστεί αυτόματα στο πεδίο Ενέργεια (Εικ. 11.2) και τα πεδία θα συμπληρωθούν αυτόματα στον πίνακα ορίσεων: στο πεδίο Όνομα φόρμας, θα εμφανιστεί το όνομα της φόρμας Πελάτες, στο πεδίο "Προβολή "- η προεπιλεγμένη τιμή της φόρμας (φόρμα), στο πεδίο" Λειτουργία παραθύρου "- η τιμή Κοινός(Κανονικός). Τα υπόλοιπα πεδία θα παραμείνουν κενά. Στην ίδια μακροεντολή, μπορούμε να ορίσουμε ένα φίλτρο για την επιλογή εγγραφών. Για να το κάνετε αυτό, εισαγάγετε στο πεδίο "Όνομα φίλτρου" το όνομα ενός φίλτρου, για παράδειγμα "Διευθυντές πωλήσεων", το οποίο δημιουργήσαμε κατά τη μελέτη ερωτημάτων (δείτε την ενότητα "Δημιουργία ερωτήματος από φίλτρο", Κεφάλαιο 4).

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

Σύκο. 11.2.Αυτόματη δημιουργία μακροεντολών με μεταφορά και απόθεση αντικειμένων

Ομοίως, μπορείτε να δημιουργήσετε μακροεντολές σύροντας από το παράθυρο Βάση δεδομένων(Βάση δεδομένων) πίνακες, ερωτήματα, αναφορές και άλλες μακροεντολές. Σε αυτήν την περίπτωση, οι αντίστοιχες μακροεντολές θα εμφανιστούν στο παράθυρο Macro Designer: OpenTable (OpenTable), OpenRequest (OpenQuery), OpenReport (OpenReport), RunMacro (RunMacro).

Για να εισαγάγετε ορίσματα για μια μακροεντολή, συνήθως πρέπει να επιλέξετε τιμές από λίστες ή να εισαγάγετε εκφράσεις. Για να εισαγάγετε εκφράσεις, μπορείτε να χρησιμοποιήσετε το Expression Builder, το κουμπί του οποίου βρίσκεται στα δεξιά του πεδίου ορίσματος. Ένα άλλο κουμπί Expression Builder βρίσκεται στη γραμμή εργαλείων. Όπως και σε άλλες περιπτώσεις, η έκφραση πρέπει να προηγείται ίσου σημείου (=). Οι εξαιρέσεις είναι το επιχείρημα Εκφραση(Έκφραση) μακροεντολές Setvalue και επιχείρημα Αριθμός επαναλήψεων(Επανάληψη μέτρησης) Macro-RunMacro (RunMacro). Εάν εισαγάγετε ένα ίσο σύμβολο μπροστά από μια παράσταση που καθορίζει την αξία αυτών των ορισμάτων, θα αξιολογηθεί δύο φορές, γεγονός που μπορεί να οδηγήσει σε ανεπιθύμητα αποτελέσματα.

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

Έτσι, η μακροεντολή που δημιουργήσαμε θα ανοίξει τη φόρμα Πελάτες στη λειτουργία Μόνο για ανάγνωση και θα εμφανίσει μόνο διαχειριστές πωλήσεων σε αυτήν. Όπως αναφέρθηκε προηγουμένως, μια μακροεντολή μπορεί να περιέχει μια ακολουθία πολλών μακροεντολών. Επομένως, στην ίδια μακροεντολή στην επόμενη γραμμή, θα επιλέξουμε την εντολή μακροεντολής μηνύματος (MsgBox), η οποία, μετά το άνοιγμα της φόρμας, θα εμφανίσει ένα παράθυρο διαλόγου με ένα μήνυμα σχετικά με το ποιοι πελάτες παρουσιάζονται στη φόρμα. Για να το κάνετε αυτό, μπείτε στο πεδίο Μήνυμα(Μήνυμα) στον πίνακα ορισμάτων το κείμενο του μηνύματος, για παράδειγμα το φίλτρο Διαχειριστές πωλήσεων είναι εγκατεστημένο, τα υπόλοιπα πεδία μπορούν να παραμείνουν αμετάβλητα Διαφωνία Σήμα(Fan) καθορίζει εάν το μήνυμα θα συνοδεύεται από ένα ηχητικό σήμα. Διαφωνία Ενα είδος(Type) καθορίζει την εμφάνιση του πλαισίου διαλόγου μηνυμάτων. Διαφωνία Επικεφαλίδα(Τίτλος) σας επιτρέπει να ορίσετε το κείμενο που θα εμφανίζεται στον τίτλο του πλαισίου μηνυμάτων.

Εάν η βάση δεδομένων είναι μεγάλη, ενδέχεται να χρειαστεί λίγος χρόνος για την επιλογή εγγραφών στη φόρμα, επομένως συνιστάται η εμφάνιση ενός δρομέα κλεψύδρας στην οθόνη για να υποδείξει ότι τα δεδομένα βρίσκονται υπό επεξεργασία. Για να γίνει αυτό, θα χρησιμοποιήσουμε τη μακροεντολή Hourglass. Οι μακροεντολές σε μια μακροεντολή εκτελούνται με τη σειρά με την οποία γράφονται στη στήλη Ενέργεια, δηλαδή από πάνω προς τα κάτω. Η μακροεντολή κλεψύδρας πρέπει να τοποθετηθεί πρώτα επειδή ο δρομέας πρέπει να αλλάξει πριν εμφανιστεί η φόρμα. Επομένως, πρέπει να εισαγάγουμε μια νέα γραμμή στο παράθυρο περιγραφής. Για να το κάνετε αυτό, τοποθετήστε τον κέρσορα στην πρώτη γραμμή του πίνακα και πατήστε το κουμπί Προσθέστε γραμμές(Εισαγωγή σειρών) στη γραμμή εργαλείων ή απλά στο πλήκτρο ... Θα εμφανιστεί μια κενή γραμμή. Σε αυτήν τη γραμμή, στο πεδίο Ενέργεια, επιλέξτε τη μακροεντολή κλεψύδρας. Το πεδίο Hourglass On στον πίνακα Arguments θα εμφανίσει Ναι, που είναι η προεπιλογή, αυτό είναι που θέλουμε. Για να επαναφέρετε την αρχική προβολή του δείκτη του ποντικιού, στο τέλος της μακροεντολής που δημιουργήσατε, πρέπει να εισαγάγετε την ίδια μακροεντολή κλεψύδρας, αλλά με το όρισμα Όχι (Όχι) επιτρέπω(Κλεψύδρα ενεργοποιημένη).

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

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

Σχόλιο

Τα Microsoft Word και Excel διαθέτουν αυτόματα εργαλεία εγγραφής μακροεντολών. Αυτά τα εργαλεία είναι πολύ βολικά για την εκμάθηση του VBA επειδή σας επιτρέπουν να δημιουργείτε αυτόματα μια διαδικασία ξεκινώντας την εγγραφή μακροεντολών, εκτελώντας τις απαραίτητες ενέργειες και διακόπτοντας την εγγραφή. Στη συνέχεια, όλες οι ενέργειες του χρήστη που εκτελούνται μετά την ενεργοποίηση της εγγραφής και πριν διακοπεί, μετατρέπονται στο κείμενο της διαδικασίας VBA. Αυτό το κείμενο μπορεί στη συνέχεια να προβληθεί και να επεξεργαστεί χρησιμοποιώντας το πρόγραμμα επεξεργασίας VBA. Δεν υπάρχει αυτόματη εγγραφή μακροεντολών στη Microsoft Access, όπως δεν υπάρχουν εργαλεία αυτόματης δημιουργίας κώδικα VBA (εκτός από τη δημιουργία των οδηγών).

Δημιουργία ομάδων μακροεντολών

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

Για να δημιουργήσετε μια ομάδα μακροεντολών:

  1. Ανοίξτε το Macro Designer χρησιμοποιώντας μία από τις μεθόδους που περιγράφονται στην προηγούμενη ενότητα.
  2. Κάντε κλικ στο κουμπί Ονόματα μακροεντολών(Όνομα μακροεντολής) στη γραμμή εργαλείων. Μια άλλη στήλη θα εμφανιστεί στον πίνακα περιγραφής στο παράθυρο του Κατασκευαστή - "Όνομα μακροεντολής" (Εικ. 11.3).
  3. Εισαγάγετε το όνομα της πρώτης μακροεντολής σε αυτήν τη στήλη. Είναι καλύτερα να αφήσετε τα υπόλοιπα πεδία αυτής της γραμμής κενά - αυτό θα διευκολύνει τη μετακίνηση και την αντιγραφή μακροεντολών.
  4. Ξεκινώντας από την επόμενη γραμμή, εισαγάγετε όλες τις μακροεντολές για τη μακροεντολή και τα αντίστοιχα ορίσματα για κάθε μακροεντολή.
  5. Παράλειψη μιας γραμμής.
  6. Επαναλάβετε τα βήματα 3-5 για κάθε μακροεντολή.

Σύκο. 11.3.Δημιουργήστε μια ομάδα μακροεντολών

Στην εικ. 11.H στο παράθυρο σχεδίασης υπάρχει μια μακροεντολή "Υπάλληλοι" της βάσης δεδομένων (Northwind). Δεν απαιτείται ξεχωριστή μακροεντολή για να δείξει το τέλος μιας μακροεντολής. Η Access συνεχίζει να εκτελεί τη μακροεντολή στην ομάδα έως ότου εντοπίσει μια σειρά που περιέχει το όνομα στη στήλη Όνομα μακροεντολής ή έως ότου φτάσει στην τελευταία σειρά στο παράθυρο μακροεντολών.

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

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

Σχόλιο

Μπορείτε να διαμορφώσετε το σύστημα έτσι ώστε η στήλη Όνομα μακροεντολής(Όνομα μακροεντολής) εμφανίζεται πάντα στο Macro Designer. Για να το κάνετε αυτό, πρέπει να ορίσετε τις κατάλληλες παραμέτρους στην καρτέλα Θέα(Προβολή) στο παράθυρο διαλόγου Παράμετροι(Επιλογές) (δείτε την ενότητα "Διαμόρφωση ρυθμίσεων εφαρμογής πρόσβασης" στο Κεφάλαιο 14).

Εφαρμογή συνθηκών σε μακροεντολές

Στα παραδείγματα μακροεντολών που δώσαμε νωρίτερα, χρησιμοποιήθηκε η διαδοχική σειρά εκτέλεσης των μακροεντολών. Ωστόσο, όπως σε οποιοδήποτε πρόγραμμα, η σειρά εκτέλεσης των μακροεντολών σε μια μακροεντολή μπορεί να αλλάξει. Γι 'αυτό, εισάγονται οι προϋποθέσεις εκτέλεσης ή παράλειψης μακροεντολών. Αυτές οι συνθήκες ορίζονται με τη μορφή εκφράσεων σε μια ειδική στήλη που εμφανίζεται στο παράθυρο Macro Designer εάν πατηθεί το κουμπί Συνθήκες(Συνθήκες) στη γραμμή εργαλείων (εικ. 11.4).

Σχόλιο

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

Σύκο. 11.4.Εφαρμογή συνθηκών σε μακροεντολές

Στην εικ. 11.4 δείχνει το παράθυρο Κατασκευαστής για την ομάδα μακροεντολών "Διάλογος ετικετών πελατών", που χρησιμοποιείται για την εκτύπωση μιας αναφοράς με τη μορφή αυτοκόλλητων ετικετών σε φακέλους. Επιπλέον, μπορείτε να εκτυπώσετε αυτοκόλλητα για όλους τους πελάτες ταυτόχρονα ή για πελάτες μιας χώρας που έχουν επιλεγεί από τη λίστα. Το παράθυρο εμφανίζει τη στήλη Συνθήκη. Εάν η συνθήκη που καθορίζεται σε αυτήν τη στήλη είναι αληθής, εκτελείται η μακροεντολή σε αυτήν τη σειρά. Εάν η συνθήκη είναι λανθασμένη, η αντίστοιχη μακροεντολή παραλείπεται και εκτελείται η επόμενη.

Εάν απαιτείται η εκτέλεση πολλών μακροεντολών ταυτόχρονα, εάν η συνθήκη είναι αληθής, τότε για όλες τις μακροεντολές, εκτός από την πρώτη, μια στήλη έλλειψης (...) τοποθετείται στη στήλη Συνθήκη. Η συνθήκη που θα ελεγχθεί είναι γραμμένη στη γραμμή της πρώτης εντολής μακροεντολής. Στη συνέχεια, εάν είναι αλήθεια, ολόκληρο το σύνολο των μακροεντολών εκτελείται από αυτήν την κατάσταση στην επόμενη μακροεντολή με μια δεδομένη συνθήκη, στην επόμενη μακροεντολή ή στο τέλος της μακροεντολής. Εάν η συνθήκη είναι λανθασμένη, παραλείπονται όλες οι εντολές που επισημαίνονται με έλλειψη, συμπεριλαμβανομένης της μακροεντολής με την καθορισμένη συνθήκη. Στη συνέχεια, εκτελείται η εντολή μακροεντολής που ακολουθεί αυτές που λείπουν, η οποία περιέχει μια νέα συνθήκη ή το πεδίο Συνθήκη δεν έχει συμπληρωθεί. Έτσι, σε αντίθεση με τις «περισσότερες γλώσσες προγραμματισμού, δεν υπάρχει εναλλακτική διακλάδωση στις μακροεντολές. Για να δημιουργήσετε μια μακροεντολή με δύο εναλλακτικούς κλάδους, πρέπει πρώτα να εισαγάγετε μια συνθήκη και να ορίσετε τις μακροεντολές που εκτελούνται όταν πληρούται αυτή η συνθήκη. Αμέσως μετά, πρέπει να καθορίσετε την αντίθετη κατάσταση και να ορίσετε τις μακροεντολές που εκτελούνται στον εναλλακτικό κλάδο. Στη συνέχεια, μπορείτε να εισαγάγετε μακροεντολές που εκτελούνται χωρίς όρους. Αυτή η μέθοδος διακλάδωσης χρησιμοποιείται, για παράδειγμα, στη μακροεντολή προεπισκόπησης που σχετίζεται με το κουμπί Θέα(Προεπισκόπηση) σε αυτήν τη φόρμα. Εάν ο χρήστης επέλεξε την επιλογή για όλες τις χώρες(AH Countries), η οποία καθορίζεται από την τιμή 1 του στοιχείου ελέγχου Εκτύπωση αυτοκόλλητων(PrintLabelFor), η αναφορά ανοίγει σε λειτουργία προεπισκόπησης και η φόρμα κλείνει. Εάν έχει επιλεγεί το κουμπί επιλογής για μια συγκεκριμένη χώρα(Συγκεκριμένη χώρα) "και δεν έχει επιλεγεί χώρα (η τιμή του σύνθετου πλαισίου SelectCountry δεν έχει οριστεί), εμφανίζεται ένα μήνυμα, ορίζεται εστίαση στο σύνθετο πλαίσιο επιλογής χώρας και η μακροεντολή σταματά να εκτελείται. Εάν έχει καθοριστεί η χώρα, εμφανίζεται η αναφορά για την επιλεγμένη χώρα και η φόρμα είναι κλειστή.

Αυτή η μακροεντολή χρησιμοποιεί τη μακροεντολή StopMacro. Σας επιτρέπει να διακόψετε την εκτέλεση της μακροεντολής, ενώ δεν θα εκτελεστούν όλες οι μακροεντολές που ακολουθούν τη μακροεντολή StopMacro.

Σχόλιο

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

Εκτέλεση και εντοπισμός σφαλμάτων μακροεντολών

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

Ένας καθολικός τρόπος για να εκτελέσετε μια μακροεντολή είναι να χρησιμοποιήσετε την εντολή μενού (Εργαλεία, Μακροεντολή, Εκτέλεση μακροεντολής) (Εικ. 11.5).

Στο πλαίσιο διαλόγου που εμφανίζεται όταν επιλέγετε αυτήν την εντολή, πρέπει να καθορίσετε (εισάγετε ή επιλέξτε από τη λίστα) το πλήρες όνομα της μακροεντολής, δηλαδή το Όνομα ομάδας. Μακρο όνομα (Εικ. 11.6). Αυτή η μέθοδος σας επιτρέπει να εκτελέσετε μια μακροεντολή από οποιοδήποτε ενεργό παράθυρο, είτε πρόκειται για παράθυρο μακροεντολών, παράθυρο βάσης δεδομένων ή, για παράδειγμα, το Form Designer.

Σύκο. 11.5.

Σύκο. 11.6.Παράθυρο διαλόγου Εκτέλεση μακροεντολής

Εκτέλεση μακροεντολής από το παράθυρο Macro Designer

Αυτή η μέθοδος χρησιμοποιείται για τον έλεγχο μιας νέας δημιουργίας ή αναθεώρησης μακροεντολής. Εάν υπάρχει μόνο μία μακροεντολή στο παράθυρο Macro Designer, τότε για να την εκτελέσετε πρέπει απλώς να πατήσετε το κουμπί Εκτόξευση(Εκτέλεση) στη γραμμή εργαλείων ή επιλέξτε την εντολή Εκτελέστε, βήμα προς βήμα(Run, Single Step) (η τελευταία μέθοδος σάς επιτρέπει να κάνετε εντοπισμό σφαλμάτων στη μακροεντολή). Ωστόσο, εάν υπάρχουν πολλές μακροεντολές, τότε χρησιμοποιώντας αυτό το κουμπί ή την εντολή μπορείτε να εκτελέσετε μόνο την πρώτη μακροεντολή στην ομάδα. Για να εκτελέσετε οποιαδήποτε άλλη μακροεντολή από την ομάδα, πρέπει να χρησιμοποιήσετε την εντολή μενού Υπηρεσία, μακροεντολή, εκτέλεση μακροεντολής(Εργαλεία, μακροεντολή, εκτέλεση μακροεντολής).

Εάν χρησιμοποιείτε συχνά αυτήν τη μέθοδο εκτέλεσης μιας μακροεντολής, είναι λογικό να προσαρμόσετε τη γραμμή εργαλείων προσθέτοντας ένα τυπικό κουμπί σε αυτήν Εκτόξευση(Εκτέλεση μακροεντολής). Είναι ισοδύναμο με την εκτέλεση της εντολής μενού Υπηρεσία, μακροεντολή, εκτέλεση μακροεντολής(Εργαλεία, μακροεντολή, εκτέλεση μακροεντολής). (Για την προσαρμογή γραμμών εργαλείων, ανατρέξτε στην ενότητα "Δημιουργία και τροποποίηση γραμμών εργαλείων", Κεφάλαιο 14.)

Εκτέλεση μακροεντολής από το παράθυρο της βάσης δεδομένων

Για να εκτελέσετε μια μακροεντολή από ένα παράθυρο Βάση δεδομένων(Βάση δεδομένων) κάντε κλικ στη συντόμευση Μακροεντολές(Μακροεντολές) στον πίνακα αντικειμένων, βρείτε την απαιτούμενη μακροεντολή στη λίστα και κάντε διπλό κλικ σε αυτήν ή πατήστε το κουμπί Εκτόξευση(Εκτέλεση) στη γραμμή εργαλείων του παραθύρου Βάση δεδομένων.Η τελευταία μέθοδος είναι κατάλληλη μόνο εάν το επιλεγμένο αντικείμενο περιέχει μία μακροεντολή. Διαφορετικά, πρέπει να χρησιμοποιήσετε την καθολική μέθοδο για την εκτέλεση μιας μακροεντολής που περιγράφεται παραπάνω.

Σχόλιο

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

Εκτέλεση μακροεντολής χρησιμοποιώντας ένα κουμπί στη γραμμή εργαλείων

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

Για να προσθέσετε ένα κουμπί στη βασική γραμμή εργαλείων της Access:

  1. Κάντε δεξί κλικ στη γραμμή εργαλείων και επιλέξτε την εντολή από το μενού περιβάλλοντος Προσαρμογή(Προσαρμογή).
  2. Προσαρμογή(Προσαρμογή) αναπτύξτε την καρτέλα Γραμμές εργαλείων(Γραμμές εργαλείων).
  3. Επιλέξτε το πλαίσιο για μία από τις τυπικές γραμμές εργαλείων, για παράδειγμα Ερώτημα σε λειτουργία πίνακα(Query Datasheet) για εμφάνιση στην οθόνη.
  4. Κλείσιμο του διαλόγου Προσαρμογή(Προσαρμογή) κάνοντας κλικ στο κουμπί Κλείσε(Κλείσε).
  5. Κάντε κλικ στη συντόμευση Μακροεντολές Βάση δεδομένων(Βάση δεδομένων) και βρείτε τη μακροεντολή που θέλετε.
  6. Σύρετε τη μακροεντολή με το ποντίκι στη γραμμή εργαλείων Αίτημα σε λειτουργίαπίνακες (φύλλο δεδομένων ερωτήματος).

Σύκο. 11.7.Δημιουργήστε ένα κουμπί γραμμής εργαλείων για να εκτελέσετε μια μακροεντολή

Σχόλιο

Εάν ο κύριος τρόπος λειτουργίας στην εφαρμογή σας λειτουργεί με φόρμες, μπορείτε να τοποθετήσετε κουμπιά για την εκτέλεση μακροεντολών στη γραμμή εργαλείων Λειτουργία φόρμας(Προβολή φόρμας).

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

Σύκο. 11.8.Μενού περιβάλλοντος με μια λίστα γραμμών εντολών

Τώρα ας δούμε τη δημιουργία μιας ειδικής γραμμής εργαλείων και την τοποθέτηση ενός κουμπιού μακροεντολής κλήσης σε αυτήν.

  1. Κάντε κλικ στη συντόμευση Μακροεντολές(Μακροεντολές) στο παράθυρο αντικειμένων στο παράθυρο Βάση δεδομένων(Βάση δεδομένων) και επιλέξτε την απαιτούμενη μακροεντολή.
  2. Επιλέξτε την εντολή (Tools, Macro, Create Toolbar from Macro). Εμφανίζεται μια κενή γραμμή εργαλείων στην οθόνη.
  3. Σύρετε την απαιτούμενη μακροεντολή σε αυτόν τον πίνακα χρησιμοποιώντας το ποντίκι.

Ένα κουμπί με το γνωστό εικονίδιο μακροεντολής εμφανίζεται στον πίνακα. Το κουμπί παίρνει το ίδιο όνομα με το όνομα της μακροεντολής για την οποία δημιουργήθηκε.

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

Εκτέλεση μιας μακροεντολής χρησιμοποιώντας μια εντολή μενού

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

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

Εκτέλεση μακροεντολής χρησιμοποιώντας συντόμευση πληκτρολογίου

Μπορείτε να αντιστοιχίσετε μια συντόμευση πληκτρολογίου για να εκτελέσετε μια μακροεντολή. Για να το κάνετε αυτό, πρέπει να δημιουργήσετε μια ειδική ομάδα μακροεντολών - "AutoKeys". Αυτή η ομάδα μακροεντολών πρέπει να περιέχει μια μακροεντολή για την εκτέλεση της αντίστοιχης μακροεντολής για κάθε συνδυασμό κλειδιών που εκχωρείτε. Ένα παράδειγμα της ομάδας μακροεντολών "AutoK" παρέχεται στη βάση δεδομένων Northwind. Ανοίξτε αυτήν την ομάδα μακροεντολών σε λειτουργία σχεδίασης. Περιέχει μία μακροεντολή (εικ. 11.9). Το όνομα της μακροεντολής είναι μια εγγραφή του συνδυασμού κλειδιών +

Η ίδια η μακροεντολή αποτελείται από μία μακροεντολή, το RunMacro, το οποίο εκτελεί τη μακροεντολή «Client phones. Εκτύπωση "(Λίστα Τηλεφώνων Πελατών. Εκτύπωση). Η μακροεντολή "AutoKeys" προβάλλεται κάθε φορά που ο χρήστης εισάγει ειδικούς συνδυασμούς κλειδιών, όπως +

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

Σύκο. 11.9.Ένα παράδειγμα της μακροεντολής "AutoKeys"

Αυτή η μέθοδος εκκίνησης μιας μακροεντολής είναι σίγουρα η ταχύτερη, αλλά έχει ένα σημαντικό μειονέκτημα: υπάρχουν πολύ λίγοι συνδυασμοί δωρεάν κλειδιών. Και παρόλο που οι συνδυασμοί που ορίζονται στα "AutoKeys" έχουν υψηλότερη προτεραιότητα από τους τυπικούς (για παράδειγμα, +- αντιγραφή), δεν συνιστάται η αντικατάσταση της τυπικής εκχώρησης συνδυασμών κλειδιών. Οι επιτρεπόμενοι συνδυασμοί πλήκτρων εμφανίζονται στον πίνακα. 11.2. Βασικοί συνδυασμοί Σε αυτήν την περίπτωση δεν εφαρμόζονται, δεδομένου ότι χρησιμοποιούνται για την εκκίνηση εντολών μενού και πατώντας κουμπιά.

Πίνακας 11.2.Επιτρεπόμενοι συνδυασμοί κλειδιών

Εκτέλεση μακροεντολής κατά το άνοιγμα μιας βάσης δεδομένων

Όταν ανοίγετε μια βάση δεδομένων Microsoft Access, ενδέχεται να πραγματοποιηθούν ορισμένες ενέργειες. Τις περισσότερες φορές αυτό ανοίγει μια ειδική φόρμα, τη λεγόμενη φόρμα κύριου κουμπιού, εμφανίζει ειδικά μενού ή γραμμές εργαλείων, κρύβει τυπικά μενού κ.λπ. Για να ορίσετε αυτές τις ενέργειες, χρησιμοποιήστε το πλαίσιο διαλόγου Εκκίνηση παραμέτρων(Ξεκίνα). Ωστόσο, μερικές φορές απαιτείται να εκτελέσετε ένα πιο περίπλοκο σύνολο ενεργειών κατά την εκκίνηση μιας εφαρμογής από ό, τι επιτρέπεται από αυτό το πλαίσιο διαλόγου. Για παράδειγμα, ίσως χρειαστεί να ανοίξετε πολλές φόρμες εκ των προτέρων (χωρίς να τις εμφανίσετε στην οθόνη), ώστε αργότερα να μην χρειαστεί πολύς χρόνος για να εμφανιστούν, να ελέγξετε ορισμένες συνθήκες ή να ζητήσετε κάποια δεδομένα. Όλα αυτά μπορούν να γίνουν χρησιμοποιώντας μια ειδική μακροεντολή που ονομάζεται "AutoExec". Όταν ανοίγετε τη βάση δεδομένων, η Access ελέγχει αυτήν τη μακροεντολή και, εάν υπάρχει, την εκτελεί. Κατά τη δημιουργία μιας μακροεντολής "AutoExec", θυμηθείτε ότι η Access θα εκτελέσει πρώτα τις ενέργειες που ορίζονται στο παράθυρο. Εκκίνηση παραμέτρων(Εκκίνηση) ακολουθούμενη από τη μακροεντολή "AutoExec", οπότε δεν πρέπει να υπάρχουν αντικρουόμενες ενέργειες.

Εκτέλεση μακροεντολής από άλλη μακροεντολή

Μερικές φορές πρέπει να καλέσετε μια μακροεντολή από άλλη μακροεντολή. Αυτό μπορεί να γίνει χρησιμοποιώντας τη μακροεντολή RunMacro. Έχουμε ήδη συναντήσει αυτήν τη μακροεντολή κατά την περιγραφή της μακροεντολής "AutoKeys". Πρέπει να σημειωθεί εδώ ότι αυτή η μακροεντολή έχει τρία ορίσματα: εκτός από το όνομα της μακροεντολής, ορίζεται ο αριθμός των επαναλήψεων της εκτέλεσης της μακροεντολής και η συνθήκη επανάληψης. Έτσι, αυτή η μακροεντολή σάς επιτρέπει να οργανώνετε βρόχους. Διαφωνία Αριθμός επαναλήψεων(Repeat Count) ορίζει τον αριθμό των κλήσεων στη μακροεντολή. Διαφωνία Επαναλάβετε την κατάσταση(Επανάληψη έκφρασης) είναι μια έκφραση που μπορεί να είναι True ή False. Η τιμή αυτής της έκφρασης ελέγχεται πριν από την εκτέλεση της μακροεντολής RunMacro. Εάν είναι αλήθεια, τότε εκτελείται η μακροεντολή, εάν είναι λάθος, τότε η μακροεντολή δεν εκτελείται και ο έλεγχος μεταφέρεται στην επόμενη εντολή μακροεντολής. Εάν δεν προσδιορίζονται αυτά τα δύο ορίσματα, η μακροεντολή εκτελείται μόνο μία φορά. Εάν δοθούν και τα δύο αυτά ορίσματα, ο βρόχος κλήσης τελειώνει όταν η μακροεντολή έχει εκτελεστεί τον καθορισμένο αριθμό φορών ή όταν η καθορισμένη συνθήκη δεν ικανοποιείται και έχει οριστεί σε False

Σχόλιο

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

Αντιστοίχιση μακροεντολής σε ένα συμβάν

Η πιο κοινή χρήση μακροεντολών σε μια εφαρμογή Access είναι ο χειρισμός συμβάντων. Εκδήλωση -Είναι οποιαδήποτε ενέργεια αναγνωρίζεται από ένα αντικείμενο και μπορεί να προσδιοριστεί η απόκριση του αντικειμένου σε ένα συμβάν. Τα συμβάντα συμβαίνουν ως αποτέλεσμα της ενέργειας του χρήστη, της εκτέλεσης των οδηγιών VBA ή που δημιουργούνται από το σύστημα. Ένα παράδειγμα συμβάντων είναι η εμφάνιση μιας φόρμας, μιας αναφοράς, η εισαγωγή δεδομένων σε ένα πεδίο κειμένου ή το πάτημα ενός κουμπιού ποντικιού ή ενός πλήκτρου. Σε κάθε ένα από αυτά τα συμβάντα μπορεί να εκχωρηθεί μια διαδικασία μακροεντολής ή VBA που θα εκτελεστεί αυτόματα σε απάντηση σε ένα συμβάν που συμβαίνει. Σχεδόν όλοι οι προγραμματισμοί στην Access έχουν ως αποτέλεσμα τη σύνταξη μακροεντολών ή διαδικασιών που χειρίζονται συμβάντα, δηλαδή, προγραμματίζεται η αντίδραση αντικειμένων σε συμβάντα. Υπάρχει ένας μεγάλος αριθμός διαφορετικών ειδών γεγονότων στα οποία αντιδρούν τα αντικείμενα, και συχνά δεν υπάρχει ένα, αλλά μια ολόκληρη σειρά συμβάντων. Επομένως, πρέπει να έχετε κάποια ικανότητα να αποφασίσετε ποιο συμβάν θα πρέπει να αντιστοιχιστεί σε μια διαδικασία μακροεντολής ή VBA που δημιουργήσατε. Θα συζητηθούν όλες οι λεπτές αποχρώσεις αυτής της επιλογής σε αίρεση. "Προγραμματισμός σε φόρμες και αναφορές" κεφ. 13.Εδώ θα περιγράψουμε μόνο τον τρόπο εκχώρησης μιας μακροεντολής σε ένα συμβάν και θα δώσουμε παραδείγματα χειρισμού συμβάντων χρησιμοποιώντας μακροεντολές.

Ας ξεκινήσουμε με το απλούστερο. Ανοίξτε τη φόρμα Πελάτες στη βάση δεδομένων Northwind. Αυτή η φόρμα εμφανίζει πληροφορίες πελατών. Ας πούμε ότι θα θέλαμε να δούμε όχι μόνο αυτές τις πληροφορίες, αλλά και δεδομένα σχετικά με τα προϊόντα που αγόρασε ο πελάτης. Θα ήταν ωραίο να δημιουργήσετε ένα κουμπί Παραγγελίες πελατών,Όταν κάνετε κλικ, η φόρμα παραγγελιών θα εμφανίζεται με παραγγελίες μόνο από τον πελάτη που έχει επιλεγεί αυτήν τη στιγμή στη φόρμα Πελάτες. Για να πάρουμε αυτό που θέλουμε, θα δημιουργήσουμε μια μακροεντολή που θα εκτελεστεί όταν συμβεί το συμβάν Πιέστε το κουμπί(On Click) στη φόρμα Πελάτες.

Για να δημιουργήσετε μια μακροεντολή που καθορίζει την περιγραφείσα αντίδραση εφαρμογής σε ένα συμβάν Πιέστε το κουμπί(Στο κλικ):

  1. Ανοίξτε τη φόρμα Πελάτες σε προβολή σχεδίασης.
  2. Δημιουργήστε ένα κουμπί στην περιοχή τίτλου της φόρμας. Σε αυτήν την περίπτωση, το κουμπί οδηγού στη γραμμή εργαλείων πρέπει να απελευθερωθεί, γιατί διαφορετικά θα σας ζητηθεί να δημιουργήσετε μια διαδικασία χειρισμού συμβάντων και όχι μια μακροεντολή.
  3. Ανοίξτε το παράθυρο ιδιοτήτων του κουμπιού που μόλις δημιουργήσατε, εάν δεν είναι ήδη ανοιχτό και αναπτύξτε την καρτέλα Εκδηλώσεις(Εκδήλωση).
  4. Παρατηρήστε πόσα διαφορετικά συμβάντα σχετίζονται μόνο με το κουμπί εντολής. Εκτός από το συνηθισμένο πάτημα, το οποίο θα χρησιμοποιούμε τώρα, το σύνολο των συμβάντων κουμπιών περιλαμβάνει λήψη και απώλεια εστίασης, διπλό κλικ στο ποντίκι, απλώς μετακίνηση του δείκτη του ποντικιού πάνω από το κουμπί κ.λπ. Μια τέτοια ποικιλία συμβάντων δίνει στον προγραμματιστή υπέροχο ευκαιρίες για τη δημιουργία μιας βολικής διεπαφής χρήστη. Τώρα βρείτε το συμβάν στη λίστα Πιέστε το κουμπί(On Click) και τοποθετήστε τον κέρσορα στο κατάλληλο κελί. Αυτό είναι ένα σύνθετο πλαίσιο και είναι προς το παρόν κενό. Εάν ανοίξετε αυτήν τη λίστα, τότε το πρώτο της στοιχείο θα είναι () και, στη συνέχεια, υπάρχει μια λίστα με όλες τις μακροεντολές που υπάρχουν στην εφαρμογή (Εικ. 11.10).
  5. Δεδομένου ότι η μακροεντολή που χρειαζόμαστε δεν περιλαμβάνεται στη λίστα, ας τη δημιουργήσουμε. Για να το κάνετε αυτό, κάντε κλικ στο κουμπί Builder στα δεξιά του πεδίου. Θα εμφανιστεί ένα παράθυρο Οικοδόμος(Επιλέξτε Builder), το οποίο προσφέρει για να επιλέξετε ένα από τα τρία Builders: Εκφράσεις(Δημιουργία έκφρασης), Μακροεντολές(Macro Builder) και Προγράμματα(Code Builder) (εικ. 11.11).
  6. Παρακαλώ επιλέξτε Μακροεντολές(Macro Builder) και κάντε κλικ στο κουμπί ΕΝΤΑΞΕΙ.Θα ανοίξει το »παράθυρο μακροεντολής και ένα παράθυρο διαλόγου, στο οποίο πρέπει να εισαγάγετε το όνομα της μακροεντολής που θα δημιουργηθεί. Εισαγάγετε το όνομα Παραγγελίες πωλήσεων.

Σύκο. 11.10.Κουτί διαλόγου ιδιοτήτων κουμπιών

Σύκο. 11.11.Παράθυρο διαλόγου Αλληλουχία μετάβασης

  1. Πρέπει να προσθέσετε μια μόνο μακροεντολή OpenForm στη μακροεντολή. Οι τιμές των ορισμάτων αυτής της μακροεντολής εμφανίζονται στον πίνακα. 11. Ζ.

Πίνακας 11.3. Τιμές μακροοικονομικού επιχειρήματος OpenForm

Διαφωνία Τρόπος(Προβολή) καθορίζει τον τρόπο με τον οποίο πρέπει να ανοίξει η φόρμα. Μπορεί να λάβει τις ακόλουθες τιμές: Η μορφή(Μορφή), Κατασκευαστής(Σχέδιο), Θέα(Προεπισκόπηση εκτύπωσης), Τραπέζι(Φύλλο δεδομένων), Συγκεντρωτικός πίνακας(Συγκεντρωτικός πίνακας) και Συγκεντρωτικός πίνακας(Συγκεντρωτικός πίνακας). Διαφωνία Συνθήκη επιλογής(Συνθήκη) ορίζει μια συνθήκη για την επιλογή των εγγραφών που εμφανίζονται στη φόρμα. Η συνθήκη είναι μια έκφραση. Σε αυτήν την περίπτωση, αυτή η έκφραση περιέχει έναν σύνδεσμο προς το στοιχείο ελέγχου. Κωδικός πελάτη(CustomerlD) στη φόρμα "Πελάτες", η οποία σας επιτρέπει να επιλέξετε όλες τις εγγραφές από τον πίνακα "Παραγγελίες" στον οποίο το αναγνωριστικό πελάτη ισούται με την τιμή που καθορίζεται στο πεδίο CustomerID της φόρμας Πελάτες. (Για περισσότερες πληροφορίες σχετικά με τη χρήση αναφορών σε μακροεντολές και εκφράσεις, ανατρέξτε στην ενότητα Χρήση μακροεντολών αυτού του κεφαλαίου.)Διαφωνία Λειτουργία δεδομένων(Λειτουργία δεδομένων) καθορίζει τον τρόπο εργασίας με δεδομένα και μπορεί να λάβει μία από τις ακόλουθες τιμές: Προσθέτωντας(Προσθήκη), Η αλλαγή(Επεξεργασία) ή Μόνο ανάγνωση(Μόνο για ανάγνωση). Τέλος, το επιχείρημα Λειτουργία παραθύρου(Window Mode) ορίζει τον τύπο του παραθύρου: Κοινός(Κανονικός), Αόρατος(Κρυμμένος), Εικόνισμα(Εικονίδιο) και Παράθυρο διαλόγου(Διάλογος).

  1. Κλείστε το παράθυρο μακροεντολής και αποθηκεύστε τις αλλαγές σας. Στο παράθυρο ιδιοτήτων του κουμπιού στο πεδίο Πιέστε το κουμπί(On Click) θα εμφανιστεί το όνομα της μακροεντολής "Παραγγελίες πώλησης".
  2. Αναπτύξτε την καρτέλα Μορφή και εισάγετε ΥπογραφήΌνομα κουμπιού (λεζάντα): Παραγγελίες πελατών. Συνιστάται να εισαγάγετε το ίδιο όνομα στο πεδίο Ονομα(Όνομα) καρτέλα Οι υπολοιποι(Αλλα).

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

Σύκο. 11.12.Φόρμα "Παραγγελίες"

Ωστόσο, δεν έχουμε ακόμη ολοκληρώσει όλα τα απαραίτητα βήματα. Εάν μεταβείτε στην επόμενη εγγραφή στη φόρμα Πελάτες, τα δεδομένα στη φόρμα Παραγγελίες δεν θα αντικατοπτρίζουν πλέον σωστά την κατάσταση - δεν αλλάζει. Πρέπει να βεβαιωθείτε ότι αυτά τα δεδομένα αλλάζουν ταυτόχρονα με τη μετάβαση σε άλλες εγγραφές στη φόρμα "Πελάτες" ή ότι αυτό το παράθυρο κλείνει απλώς. Ας εξετάσουμε την εφαρμογή της δεύτερης επιλογής. Η φόρμα παραγγελιών ανοίγει όταν κάνουμε κλικ στο κουμπί Παραγγελίες πελατών,και γίνεται ενεργός. Θέλετε να το κλείσετε όταν ενεργοποιηθεί η φόρμα Πελάτες. Για να το κάνετε αυτό, πρέπει να επιλέξετε το κατάλληλο συμβάν και να ορίσετε μια διαδικασία ή μακροεντολή για να το χειριστείτε. Εάν ανοίξετε ένα παράθυρο Ιδιότητες(Ιδιότητες) φόρμα "Πελάτες" (Πελάτες) και ανοίξτε την καρτέλα Εκδηλώσεις(Εκδήλωση), τότε μεταξύ των πολλών εκδηλώσεων θα δείτε ένα συμβάν Ανάβοντας(Ενεργοποίηση). Αυτό είναι ακριβώς το γεγονός που χρειαζόμαστε. Θα επιλέξουμε αυτό το συμβάν, αλλά τώρα δεν θα δημιουργήσουμε μια νέα ομάδα μακροεντολών, αλλά θα προσθέσουμε μια νέα μακροεντολή στην ομάδα μακροεντολών Πελάτες, η οποία περιέχει ήδη μακροεντολές για τη φόρμα Πελάτες. Επιλέξτε αυτήν την ομάδα μακροεντολών από την αναπτυσσόμενη λίστα και κάντε κλικ στο κουμπί Builder. Θα ανοίξει ένα παράθυρο με δύο μακροεντολές. Ας προσθέσουμε μια ακόμη μακροεντολή σε αυτά. Ας το ονομάσουμε "Κλείσιμο" και εισάγουμε την εντολή Κλείσιμο μακροεντολής με τις κατάλληλες παραμέτρους (Πίνακας 11.4). Αλλά πριν κλείσετε τη φόρμα, πρέπει να ελέγξετε αν είναι ανοιχτή. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε τη συνάρτηση isLoaded, η οποία επιστρέφει True εάν η φόρμα είναι ανοιχτή και False διαφορετικά. Το όνομα της φόρμας πρέπει να περάσει ως όρισμα στη συνάρτηση isLoaded. Έτσι, στη στήλη Κατάσταση(Συνθήκη) δίπλα στη μακροεντολή Κλείσιμο, εισαγάγετε IsLoaded (ή IsLoaded (Παραγγελίες)).

Διαφωνία αξία
Τύπος αντικειμένου Έντυπο (Έντυπα)
Όνομα αντικειμένου Παραγγελίες
Σώσει Οχι όχι)

Πίνακας 11.4.Κλείσιμο Τιμές επιχειρήματος δράσης

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

Κλείστε το παράθυρο μακροεντολής και αποθηκεύστε τις αλλαγές σας. Αλλάξτε το όνομα της μακροεντολής που έχει εκχωρηθεί στο συμβάν Ανάβοντας(Ενεργοποίηση). Για να το κάνετε αυτό, επιλέξτε από τη λίστα ή εισαγάγετε το όνομα Πελάτες. Κλείστε και πατήστε το πλήκτρο ... Τώρα αποθηκεύστε τη φόρμα, μεταβείτε στη λειτουργία Φόρμες και ελέγξτε πώς λειτουργούν οι μακροεντολές που έχετε δημιουργήσει.

Σύκο. 11.13.Μακροεντολή για το κλείσιμο μιας φόρμας

Κλήση μιας μακροεντολής από μια διαδικασία VBA

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

Για να ξεκινήσετε μια διαδικασία VBA από μια μακροεντολή, υπάρχει μια ειδική μακροεντολή RunProgramme (KipCode). Αυτή η μακροεντολή έχει ένα όρισμα, το όνομα της διαδικασίας που θα κληθεί, αν και μπορεί να κληθεί μόνο μια συνάρτηση, όχι μια υπορουτίνα.

Για να εκτελέσετε μια μακροεντολή από μια διαδικασία VBA, χρησιμοποιήστε την ειδική μέθοδο RunMacro του αντικειμένου DoCmd, για παράδειγμα:

DoCmd.RunMacro "Μακροεντολή!"

Το αντικείμενο DoCmd χρησιμοποιείται σε μια διαδικασία VBA για την εκτέλεση μακροεντολών Access. Σε αυτήν την περίπτωση, το αγγλικό όνομα της απαιτούμενης μακροεντολής πρέπει να καθοριστεί ως η μέθοδος του αντικειμένου DoCmd, για παράδειγμα, η γραμμή διαδικασίας

DoCmd.OpenForm "Πελάτες"

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

Θα εξετάσουμε το ενδεχόμενο δημιουργίας διαδικασιών VBA παρακάτω, σε χρ. 13.

Εντοπισμός σφαλμάτων μακροεντολών και εύρεση σφαλμάτων

Συνήθως, για τον εντοπισμό σφαλμάτων μιας μακροεντολής, εκτελείται σε λειτουργία βήμα προς βήμα. Για να ενεργοποιήσετε αυτήν τη λειτουργία, πατήστε το κουμπί Βήμα βήμα(Single Step) στη γραμμή εργαλείων στο παράθυρο Macro Builder ή επιλέξτε την εντολή μενού Εκτελέστε, βήμα προς βήμα(Εκτέλεση, μονό βήμα). Στη συνέχεια, προτού εκτελέσετε κάθε εντολή μακροεντολής, θα εμφανιστεί το πλαίσιο διαλόγου (Single Step) (Εικ. 11.14).

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

Σύκο. 11.14.Παράθυρο διαλόγου Βήμα προς βήμα εκτέλεση μιας μακροεντολής

Εάν παρουσιαστεί σφάλμα κατά την εκτέλεση μιας μακροεντολής, εμφανίζεται ένα πλαίσιο διαλόγου. Σφάλμα εκτέλεσης μακροεντολών(Η ενέργεια απέτυχε), παρόμοια με το παράθυρο Βήμα προς βήμα εκτέλεση μιας μακροεντολής(Macro Single Step), αλλά χωρίς τη δυνατότητα συνέχισης της διαδικασίας (κουμπιά Βήμα(Βήμα) και Προχωρώ(Συνέχεια) δεν είναι διαθέσιμα). Μπορείτε να διακόψετε την εκτέλεση της μακροεντολής μόνο κάνοντας κλικ στο κουμπί Κάνω αποβολή(Παύση). Μια μακροεντολή που περιέχει σφάλμα εμφανίζεται στο παράθυρο.

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

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

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

Συμβουλή

Πριν χρησιμοποιήσετε συνδέσμους σε μια φόρμα ή στοιχείο ελέγχου, συνιστάται να ελέγξετε εάν η φόρμα είναι ανοιχτή χρησιμοποιώντας τη συνάρτηση isLoaded (). Δυστυχώς, αυτή η δυνατότητα δεν είναι μια τυπική δυνατότητα πρόσβασης, αλλά συνήθως περιλαμβάνεται στη λειτουργική μονάδα Utility Function της βάσης δεδομένων Northwind. Μπορείτε να το αντιγράψετε από εκεί στη βάση δεδομένων σας.

Η τυπική τεχνική για τον εντοπισμό σφαλμάτων τόσο των διαδικασιών όσο και των μακροεντολών είναι η εμφάνιση ειδικών μηνυμάτων στην οθόνη που υποδεικνύουν τη μετάβαση ορισμένων σταδίων της διαδικασίας. Σε μακροεντολές, αυτό γίνεται με την εισαγωγή πρόσθετων μακροεντολών MsgBox για την εμφάνιση τέτοιων μηνυμάτων. Επιπλέον, στο μήνυμα μπορείτε να εμφανίσετε τις τιμές των ιδιοτήτων των στοιχείων ελέγχου, για παράδειγμα: "Τιμή προϊόντος =" & Φόρμες! Προϊόντα! Τιμή

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

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

Εφαρμογή μακροεντολών

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

Εργασία με δεδομένα σε φόρμες και αναφορές

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

Σύνδεσμοι για φόρμες, αναφορές και τις ιδιότητές τους

Για να αναφέρετε μια φόρμα ή μια αναφορά, πρέπει πρώτα να προσδιορίσετε σε ποια συλλογή ανήκει το αντικείμενο αναφοράς. (Για περισσότερες πληροφορίες σχετικά με τις οικογένειες και τα συστατικά τους αντικείμενα, δείτε το Κεφάλαιο 13)Όλες οι ανοιχτές φόρμες ανήκουν στην οικογένεια Φορμών και οι ανοιχτές αναφορές ανήκουν στην οικογένεια Αναφορών. Ένας πλήρης σύνδεσμος για μια φόρμα ή αναφορά πρέπει να αποτελείται από δύο μέρη: FamilyName! ObjectName. Επιπλέον, εάν το όνομα του αντικειμένου περιέχει κενά ή ειδικούς χαρακτήρες, τότε πρέπει να περικλείεται σε αγκύλες. Εάν τα κενά δεν χρησιμοποιούνται στο όνομα, οι παρενθέσεις μπορούν να παραλειφθούν. Έτσι, ο σύνδεσμος προς τη φόρμα θα έχει την εξής μορφή: Φόρμες! [Παραγγελίες πελατών] Ή Φόρμες! Πελάτες Για την αναφορά, οι σύνδεσμοι μοιάζουν:

Αναφορές! [Αναφορά πωλήσεων] Ή Αναφορές! Τιμοκατάλογος Ένας σύνδεσμος για μια φόρμα ή μια ιδιότητα αναφοράς αποτελείται από τρία μέρη: FamilyName! ObjectName.PropertyName Για παράδειγμα:

Φόρμες! Πελάτες. Ορατό ή Αναφορές! [Περίοδος Πωλήσεων] Έξοδος στην οθόνη(Ορατό) καθορίζει εάν η φόρμα θα είναι ορατή στην οθόνη ή θα είναι κρυφή, καθώς και η ιδιότητα Μενού(MenuBar) σας επιτρέπει να συσχετίσετε ένα ειδικό μενού με μια αναφορά ή φόρμα.

Σύνδεσμοι για ελέγχους φορμών, αναφορών και των ιδιοτήτων τους

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

FamilyName! ObjectName! ElementName

Έντυπα! [Παραγγελίες πελατών]! [Αριθμός παραγγελίας]

Αναφορές! [Πωλήσεις για την περίοδο]! [Ποσό]

FamilyName! ObjectName! ItemName.PropertyName

Για παράδειγμα:

Φόρμες! [Παραγγελίες πελατών]! [Αριθμός παραγγελίας]. Ενεργοποιήθηκε

Ιδιοκτησία Πρόσβαση(Ενεργοποιημένο) σας επιτρέπει να αρνηθείτε ή να επιτρέψετε την πρόσβαση στον έλεγχο.

Ένα αντικείμενο μπορεί να έχει μια προεπιλεγμένη ιδιότητα. Αυτή η ιδιότητα χρησιμοποιείται όταν το όνομα της ιδιότητας δεν αναφέρεται ρητά στον σύνδεσμο. Για παράδειγμα, τα στοιχεία ελέγχου έχουν την προεπιλεγμένη ιδιότητα αξία(Τιμή), οπότε ο σύνδεσμος Φόρμες! Προϊόντα! Η τιμή σας επιτρέπει να αποκτήσετε πρόσβαση στην τιμή που εμφανίζεται στο πλαίσιο κειμένου Τιμή.

Σύνδεσμοι προς δευτερεύουσες μορφές και αναφορές

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

Φόρμες! Παραγγελίες! SubformProducts

Εδώ SubformProducts είναι το όνομα του στοιχείου ελέγχου στη φόρμα παραγγελιών, η οποία είναι μια δευτερεύουσα φόρμα.

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

Φόρμες! Παραγγελίες! ProductsSubform.Form! [Κωδικός προϊόντος]

Φιλτράρισμα αρχείων σε φόρμες, αναφορές, πίνακες

Ας προχωρήσουμε σε παραδείγματα χρήσης μακροεντολών Access. Για να επιλέξετε εγγραφές σε φόρμες, αναφορές, πίνακες, χρησιμοποιήστε την εντολή μακροεντολής ApplyFilter. Υπάρχουν δύο τρόποι για να ορίσετε ένα φίλτρο: είτε καθορίζοντας το όνομα ενός φίλτρου που δημιουργήθηκε προηγουμένως στο όρισμα Όνομα φίλτρου(Όνομα φίλτρου) ή καθορίζοντας απευθείας την κατάσταση επιλογής στο όρισμα Συνθήκη επιλογής(Όπου η κατάσταση). Εάν το φίλτρο πρέπει να εφαρμοστεί αμέσως κατά το άνοιγμα της φόρμας, τότε με το συμβάν Ανοιγμα(On Open) η φόρμα πρέπει να δεσμεύει μια μακροεντολή που περιέχει τη μακροεντολή ApplyFilter. Εάν πρέπει να αλλάξετε δυναμικά το σύνολο των εγγραφών που εμφανίζονται σε ανοιχτή φόρμα, προχωρήστε ως εξής:

  • δημιουργήστε σε αυτήν τη φόρμα ένα σύνολο πεδίων στα οποία μπορείτε να ορίσετε τις συνθήκες επιλογής.
  • δημιουργήστε ένα κουμπί Εφαρμογή φίλτρου,με την οποία να συσχετίζεται η μακροεντολή που περιέχει τη μακροεντολή ApplyFilter. Ως τιμή επιχειρήματος Συνθήκη επιλογής(Όπου η συνθήκη) για αυτήν τη μακροεντολή καθορίζει μια έκφραση που περιέχει αναφορές σε αυτά τα πεδία.

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

Αυτή η φόρμα δημιουργήθηκε από τον πίνακα προϊόντων χρησιμοποιώντας τον Οδηγό φόρμας αυτόματης κορδέλας. Στη συνέχεια, στη λειτουργία Σχεδίαση φόρμας, προστίθενται πεδία για να καθορίσουν κριτήρια επιλογής και κουμπιά για την εφαρμογή και την ακύρωση του φίλτρου. Αντίστοιχες μακροεντολές που σχετίζονται με το συμβάν Πιέστε το κουμπί(On Click) φαίνονται στο Σχ. 11.16. Για να ακυρώσετε το φίλτρο, χρησιμοποιήστε την εντολή μακροεντολής ShowAllRecords.

Σύκο. 11.15.Φόρμα για την επιλογή εγγραφών με καθορισμένα κριτήρια


Σύκο. 11.16.Μακροεντολές για τη ρύθμιση και την ακύρωση ενός φίλτρου στη φόρμα "Προϊόντα"

Στην εικ. Το 11.16 παρουσιάζει δύο μακροεντολές: SetFilter και CancelFilter. Στο πλαίσιο διαλόγου Περιοχή εισόδου(Zoom) εμφανίζεται η τιμή του ορίσματος Συνθήκη επιλογής(Όπου συνθήκη) της μακροεντολής ApplyFilter. Λάβετε υπόψη ότι η κατάσταση αποδείχθηκε αρκετά περίπλοκη και το μήκος του πεδίου Συνθήκη επιλογής(Όπου η κατάσταση) περιορίζεται σε 255 χαρακτήρες. Επομένως, εάν συμπεριλάβαμε ένα ακόμη πεδίο στις συνθήκες επιλογής, για παράδειγμα, "Οι παραδόσεις διακόπτονται", θα πρέπει να δημιουργήσουμε ξεχωριστά ένα ειδικό φίλτρο και να ορίσουμε το όνομά του στο όρισμα Όνομα φίλτρου(Όνομα φίλτρου).

Στη μακροεντολή "UndoFilter", εκτός από τη μακροεντολή ShowAllRecords, χρειάζονται δύο ακόμη μακροεντολές για την εκκαθάριση των πεδίων "SupplierSelect" και "TypeSelect", δηλαδή για να τους εκχωρήσουν μια τιμή Αδειάζω(Μηδενικό). Αυτό γίνεται χρησιμοποιώντας τη μακροεντολή SetValue.

Περιήγηση στα δεδομένα

Αυτή η ομάδα μακροεντολών σχετίζεται με την πλοήγηση μέσω εγγραφών και στοιχείων ελέγχου. Ως παράδειγμα χρήσης των μακροεντολών αυτής της ομάδας, εξετάστε μια κατάσταση κατά την οποία ένας χρήστης συνεργάζεται με τη φόρμα "Πελάτες" και θέλει να βρει μια παραγγελία από τον τρέχοντα πελάτη, του οποίου ο αριθμός γνωρίζει. Ας επιστρέψουμε στο παράδειγμα που δίνεται στο αίρεση. "Αντιστοίχιση μακροεντολής σε ένα συμβάν".Στη συνέχεια, δημιουργήσαμε ένα κουμπί στη φόρμα "Πελάτες". Παραγγελίες πελατώνγια να εμφανίσετε τις παραγγελίες του επιλεγμένου πελάτη. Ας προσπαθήσουμε να βελτιώσουμε αυτές τις φόρμες. Εάν ο χρήστης γνωρίζει τον αριθμό παραγγελίας, μπορεί να τον εισαγάγει στο πεδίο κειμένου Αναζήτηση παραγγελίας,το οποίο μπορεί να προστεθεί στη φόρμα Πελάτες. Στη συνέχεια, στην ανοιχτή φόρμα "Παραγγελίες", θα πρέπει να δείξετε αμέσως την εγγραφή που περιέχει το αντίστοιχο τιμολόγιο. Ας προσθέσουμε το πεδίο «Αναζήτηση παραγγελίας» στην κεφαλίδα της φόρμας και να το κάνουμε έτσι ώστε όταν ανοίγει η φόρμα «Παραγγελίες», να ελέγχεται η τιμή αυτού του πεδίου και, εάν δεν είναι κενό, το τιμολόγιο με τον καθορισμένο αριθμό αναζητείται και πραγματοποιείται μετάβαση στην αντίστοιχη εγγραφή. Διαφορετικά, η πρώτη εγγραφή από το φιλτραρισμένο σύνολο εγγραφών θα γίνει η τρέχουσα. Στην εικ. Το Σχήμα 11.17 δείχνει τη φόρμα Πελάτες με ένα νέο πεδίο και μια μακροεντολή Εύρεση παραγγελίας που σχετίζεται με το συμβάν On Load της φόρμας Παραγγελίες.

Δεδομένου ότι η προσθήκη μακροεντολής συμβάντος αναφέρεται σε ένα στοιχείο ελέγχου στη φόρμα Πελάτες, θα πρέπει να εκτελείται μόνο εάν η φόρμα είναι ανοιχτή και, επιπλέον, η αναζήτηση θα πρέπει να εκτελείται μόνο όταν το πεδίο Αναζήτηση παραγγελίας δεν είναι κενό ... Με βάση αυτό, διαμορφώνονται οι συνθήκες της μακροεντολής. Πριν αναζητήσετε μια εγγραφή με ένα μοτίβο σε ένα από τα πεδία, πρέπει να ενεργοποιήσετε αυτό το πεδίο, για το οποίο χρησιμοποιείτε τη μακροεντολή KElementControl (GoToControl). Ορίζει την εστίαση στο πεδίο Orderld. Αλλά αυτό το πεδίο δεν είναι διαθέσιμο στη φόρμα Παραγγελίες, οπότε πρώτα πρέπει να αλλάξετε την αξία της ιδιότητας Πρόσβαση(Ενεργοποιημένο) αυτό το πεδίο. Διαφορετικά, η εκτέλεση της μακροεντολής GoToControl θα οδηγήσει σε σφάλμα.

Η μακροεντολή KElementControl (GoToControl) χρησιμοποιείται, κατά κανόνα, "εάν θέλετε να αλλάξετε την τυπική σειρά μετάβασης μεταξύ πεδίων στη φόρμα. Συνήθως, η μετάβαση μεταξύ πεδίων γίνεται χρησιμοποιώντας το κλειδί<Таb>Ωστόσο, μερικές φορές θέλετε να παραλείψετε ορισμένα πεδία και να μετακινήσετε την εστίαση σε ένα συγκεκριμένο στοιχείο ελέγχου. Αυτό μπορεί να εξαρτάται από κάποια κατάσταση, όπως η τιμή ενός πεδίου. Σε αυτήν την περίπτωση, το συμβάν Μετά την ενημέρωση(Μετά την ενημέρωση) εκχωρείται μια μακροεντολή για αυτό το prlya, το οποίο μεταφέρει την εστίαση στο επιθυμητό στοιχείο ελέγχου της φόρμας. Το σύντομο όνομα του στοιχείου ελέγχου πρέπει να καθοριστεί ως όρισμα στη μακροεντολή. Εάν το όνομα είναι πολύ μεγάλο, δεν θα μεταβεί στο στοιχείο ελέγχου και θα εμφανιστεί ένα μήνυμα σφάλματος.

Σύκο. 11.17.Παράδειγμα μακροεντολής για πλοήγηση δεδομένων

Ανανέωση δεδομένων σε φόρμες και στοιχεία ελέγχου

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

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

Για να ενημερώσετε εγγραφές σε φόρμες, πίνακες ή στοιχεία ελέγχου, χρησιμοποιήστε τις μακροεντολές Requery, ShowAllRecords και RepaintObject.

Η μακροεντολή ενημέρωσης (Requery) ανανεώνει τα δεδομένα στο αντικείμενο της βάσης δεδομένων επανεξετάζοντας την πηγή δεδομένων. Η μακροεντολή έχει ένα όρισμα που περιέχει το όνομα του αντικειμένου προς ενημέρωση. Εάν ενημερώνετε ένα ενεργό αντικείμενο, όπως μια φόρμα, το πεδίο ορίσματος πρέπει να παραμείνει κενό. Σε αυτήν την περίπτωση, η μακροεντολή θα εκτελέσει εκ νέου το αίτημα που καθορίζεται στην ιδιότητα Πηγή δεδομένων(RecordSource) αυτής της φόρμας.

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

ΕΠΙΛΟΓΗ Πελάτων DISTINCT. Χώρα ΑΠΟ Πελάτες.

Εάν, όταν εισάγετε έναν πελάτη, προστίθεται ένα νέο όνομα χώρας στον πίνακα, αυτή η χώρα δεν θα εμφανίζεται στη λίστα, καθώς το ερώτημα θα επαναληφθεί μόνο την επόμενη φορά που θα ανοίξει η φόρμα. Για να ενημερώσετε τη λίστα χωρών νωρίτερα, θα πρέπει να εκχωρήσετε ένα συμβάν Μετά την ενημέρωση(Μετά την ενημέρωση) της φόρμας Macro Clients. Ενημέρωση της λίστας χωρών, η οποία αποτελείται από μία μακροεντολή ενημέρωσης (Requery) με την τιμή του ορίσματος "Country" (Εικ. 11.18).

Σύκο. 11.18.Αντιστοίχιση μακροεντολής σε ένα συμβάν φόρμας Μετά την ενημέρωση

Σχόλιο

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

Χρησιμοποιώντας την Ενημέρωση μακροεντολής (Requery), μπορείτε να ενημερώσετε δεδομένα σε ανενεργή φόρμα, πιο συγκεκριμένα, όχι με τη μορφή στην οποία έχει εκχωρηθεί η μακροεντολή. Ωστόσο, σε αυτήν την περίπτωση, πρέπει πρώτα να εκτελέσετε τη μακροεντολή SelectObject, η οποία θα μεταφέρει την εστίαση στην επιθυμητή φόρμα για να την ενεργοποιήσετε (τότε η εστίαση μπορεί να επιστραφεί ξανά).

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

Η ενέργεια μακροεντολής RepaintObject ισχύει μόνο για ένα αντικείμενο βάσης δεδομένων (πίνακας, ερώτημα, φόρμα, αναφορά, σελίδα, μακροεντολή και λειτουργική μονάδα) και δεν ισχύει για ένα στοιχείο ελέγχου. Ενημερώνει άμεσα το καθορισμένο ανοιχτό αντικείμενο (εάν δεν έχει καθοριστεί όνομα αντικειμένου, το ενεργό αντικείμενο ενημερώνεται), αν και δεν εκτελεί ξανά το ερώτημα έναντι της προέλευσης δεδομένων. Η ανανέωση του αντικειμένου δεν επηρεάζει. εμφάνιση νέων και διαγραμμένων εγγραφών, όπως συμβαίνει κατά την εκτέλεση της ενημερωμένης έκδοσης μακροεντολής (Requery). Συνήθως, χρησιμοποιείτε τη μακροεντολή RepaintObject για να εμφανίσετε τα αποτελέσματα των αλλαγών δεδομένων χρησιμοποιώντας τις μακροεντολές SetValue και για να υπολογίσετε ξανά τις τιμές των εκφράσεων σε υπολογισμένα στοιχεία ελέγχου.

Εργασία με αντικείμενα

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

Ο ορισμός των ιδιοτήτων των στοιχείων ελέγχου σας επιτρέπει να κάνετε δυναμικά, ανάλογα με τις συνθήκες, να κάνετε αυτά τα στοιχεία ελέγχου απρόσιτα ή αόρατα. Να μερικά παραδείγματα.

  • Μπορείτε να δημιουργήσετε μια φόρμα στην οποία, ανάλογα με ορισμένες συνθήκες, διαφορετικά πεδία θα είναι ορατά. Αυτό σας επιτρέπει να χρησιμοποιείτε μία φόρμα σε πολλές περιπτώσεις και να μην δημιουργείτε πρόσθετη φόρμα για κάθε περίπτωση. Όταν υπάρχουν πολλές φόρμες στην εφαρμογή, αυτή η δυνατότητα γίνεται πολύ χρήσιμη. Για να κάνετε το στοιχείο ελέγχου αόρατο, ορίστε την τιμή Ψευδής(False) για ιδιοκτησία Έξοδος στην οθόνη(Ορατό) αυτού του είδους. Για να εμφανιστεί το στοιχείο ελέγχου στην οθόνη, ορίστε αυτήν την ιδιότητα Αληθής(Αληθής).
  • Ανάλογα με την τρέχουσα κατάσταση εργασίας με δεδομένα, μπορείτε να αλλάξετε τη διαθεσιμότητα των κουμπιών που έχουν σχεδιαστεί για την εκτέλεση συγκεκριμένων ενεργειών ή άλλων στοιχείων ελέγχου στη φόρμα. Για να μην είναι διαθέσιμο το στοιχείο ελέγχου, ορίστε την τιμή Ψευδής(False) στην ενεργοποιημένη ιδιότητά του. Για να κάνετε τον έλεγχο προσβάσιμο, ορίστε την τιμή Αληθής(True) για αυτήν την ιδιότητα.
  • Μπορείτε να αποτρέψετε τον χρήστη από την τροποποίηση των δεδομένων στη φόρμα. Για αυτό, το ακίνητο Πρόσβαση(Ενεργοποιημένα) τα αντίστοιχα πεδία πρέπει να οριστούν σε Ψευδής(False), και το ακίνητο Κλείδωμα αρχείων(Κλειδωμένο) - τιμή Αληθής(Αληθής). Εάν θέλετε να απαγορεύσετε την αλλαγή σε όλα τα πεδία, ορίστε την τιμή Ψευδής(False) για τις ακόλουθες ιδιότητες φόρμας: Να επιτρέπονται οι αλλαγές(Να επιτρέπονται οι τροποποιήσεις), Να επιτρέπεται η προσθήκη(Να επιτρέπονται προσθήκες), Επιτρέψτε τη διαγραφή(Να επιτρέπονται διαγραφές). Αυτές οι ιδιότητες μπορούν να αλλάξουν δυναμικά, δηλαδή, ενώ ο χρήστης εργάζεται με τη φόρμα. Για παράδειγμα, μπορείτε να ενεργοποιήσετε ή να απενεργοποιήσετε την επεξεργασία δεδομένων αφού ελέγξετε τα δικαιώματα του χρήστη.
  • Χρησιμοποιώντας την ενέργεια μακροεντολής SetValue, μπορείτε να αλλάξετε δυναμικά την τιμή της ιδιότητας Πηγή εγγραφής(RecordSource) για τη φόρμα, η οποία σας επιτρέπει να ελέγχετε το περιεχόμενο των δεδομένων που εμφανίζονται.

Υπάρχουν μακροεντολές για το άνοιγμα και το κλείσιμο αντικειμένων της Access:

OpenForm, OpenQuery, OpenReport, κ.λπ. Για να ανοίξετε ένα αντικείμενο κάθε τύπου, χρησιμοποιείται μια ξεχωριστή μακροεντολή και για να κλείσετε ένα αντικείμενο, χρησιμοποιείται η εντολή Κλείσιμο μακροεντολής, η οποία είναι κοινή για αντικείμενα όλων των τύπων. Ο τύπος αντικειμένου στο οποίο πρέπει να εφαρμοστεί αυτή η μακροεντολή καθορίζεται ως ένα από τα ορίσματά του. Τα προηγούμενα παραδείγματα έχουν ήδη χρησιμοποιήσει τις μακροεντολές OpenForm και Close για το ενεργό αντικείμενο.

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

Όταν εκτελείτε ένα ερώτημα που αλλάζει δεδομένα, στην οθόνη θα εμφανίζονται προειδοποιητικά μηνύματα. Για να απενεργοποιήσετε την εμφάνιση αυτών των μηνυμάτων, χρησιμοποιήστε τη μακροεντολή SetWarnings με την τιμή ορίσματος Δεν(Οχι). Απλώς θυμηθείτε να ενεργοποιήσετε ξανά την εμφάνιση μηνυμάτων συστήματος μετά την εκτέλεση του ερωτήματος, χρησιμοποιώντας την ίδια μακροεντολή, αλλά με το όρισμα Ναι. Διαφορετικά, η Access δεν θα εμφανίζει μηνύματα συστήματος, τα οποία μπορεί να οδηγήσουν σε ανεπιθύμητες ενέργειες στην εφαρμογή.

Η μακροεντολή OpenView είναι παρόμοια με τη μακροεντολή OpenQuery, εκτός από το ότι χρησιμοποιείται σε έργα της Access 2000 και έχει σχεδιαστεί για να λειτουργεί με δεδομένα που είναι αποθηκευμένα στο διακομιστή.

Η ενέργεια μακροεντολής OpenStoreProcedure σάς επιτρέπει να εκτελείτε ή να ανοίγετε μια αποθηκευμένη διαδικασία διακομιστή σε κατάσταση επεξεργασίας. .

Δεν περιγράφονται όλες οι μακροεντολές σε αυτήν την ενότητα. Χρησιμοποιήστε το σύστημα βοήθειας της Access για πλήρεις πληροφορίες. Για να λάβετε γρήγορη βοήθεια:

  1. Επιλέξτε μια ομάδα Βοήθεια, Βοήθεια MicrisiftΠρόσβαση (Βοήθεια, Βοήθεια Microsoft Access).
  2. Αναπτύξτε την καρτέλα Απάντηση μάγος(Απάντηση οδηγός) και εισάγετε στο πεδίο Επιλέξτε μια ενέργεια(Τι θα θέλατε να κάνετε;) Είναι το όνομα της μακροεντολής. Κάντε κλικ στο κουμπί Να βρω(Αναζήτηση).

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

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

Ας προσπαθήσουμε να μετατρέψουμε μακροεντολές που έχουν εκχωρηθεί σε συμβάντα στη φόρμα Διαλόγου Πελάτες σε ρουτίνες συμβάντων:

  1. Ανοίξτε τη φόρμα διαλόγου "Ετικέτες πελατών" σε προβολή σχεδίασης.
  2. Επιλέξτε μια ομάδα Υπηρεσία, μακροεντολή, μετατροπή μακροεντολών φόρμας(Εργαλεία, μακροεντολή, μετατροπή μακροεντολών φόρμας σε Visual Basic).
  3. Στο πλαίσιο διαλόγου Μετατροπή μακροεντολής φόρμας(Μετατροπή μακροεντολών φόρμας) (εικ. 11.19) κάντε κλικ στο κουμπί Μετατρέπω(Μετατροπή), αφήνοντας επιλεγμένα τα προεπιλεγμένα πλαίσια ελέγχου.

Σύκο. 11.19.Μετατροπή διαδικασίας μακροεντολής σε VBA

  1. Όταν ολοκληρωθεί η μετατροπή, στη φόρμα διαλόγου "Ετικέτες πελατών", κάντε δεξί κλικ, όπως Ματαίωση,και επιλέξτε την εντολή Ιδιότητες(Ιδιότητες).
  2. Στο πλαίσιο διαλόγου Ιδιότητες(Ιδιότητες) αναπτύξτε την καρτέλα Εκδηλώσεις(Εκδηλώσεις).
  3. Στο πλαίσιο εκδήλωσης Πιέστε το κουμπί(On Click) αποδείχθηκε ότι έχει οριστεί [Διαδικασία εκδήλωσης](). Κάντε κλικ στο κουμπί Builder που βρίσκεται στα δεξιά του πεδίου - θα ανοίξει ένα παράθυρο επεξεργαστή VBA με το κείμενο της διαδικασίας (Εικ. 11.20).

Σύκο. 11.20.Διαδικασία που προέρχεται από μια μακροεντολή

Αυτή η διαδικασία που προέρχεται από μακροεντολή χρησιμοποιεί το αντικείμενο DoCmd για την εκτέλεση της μακροεντολής κλειστής φόρμας. Σύμφωνα με τα πλαίσια ελέγχου που έχουν οριστεί στο παράθυρο Μακρομετατροπή(Μετατροπή μακροεντολής), τα σχόλια σε μια μακροεντολή έχουν μετατραπεί σε σχόλια σε μια διαδικασία και ένας κώδικας χειρισμού σφαλμάτων έχει προστεθεί για εμφάνιση ενός μηνύματος σφάλματος σε περίπτωση σφάλματος (βλ. κεφάλαιο 13).

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

Τώρα ας δούμε τη μετατροπή σε μια διαδικασία VBA μιας μακροεντολής που δεν σχετίζεται με ένα συμβάν σε μια φόρμα ή αναφορά, όπως η μακροεντολή Sales Managers που δημιουργήσαμε νωρίτερα.

  1. Κάντε κλικ στη συντόμευση Μακροεντολές(Μακροεντολές) στο παράθυρο Βάσης δεδομένων Northwind. Εμφανίζεται μια λίστα μακροεντολών. Επιλέξτε τη μακροεντολή Sales Managers.
  2. Επιλέξτε μια ομάδα Υπηρεσία, μακροεντολή, μετατροπή μακροεντολών(Εργαλεία, Μακροεντολή, Μετατροπή μακροεντολών σε Visual Basic).
  3. Θα ανοίξει το ίδιο παράθυρο διαλόγου με το προηγούμενο παράδειγμα (βλ. Εικ. 11.19), στο οποίο πρέπει να κάνετε κλικ στο κουμπί Μετατρέπω(Μετατρέπω). Μετά το τέλος της διαδικασίας μετατροπής, θα εμφανιστεί ένα μήνυμα σχετικά με την επιτυχή ολοκλήρωση της διαδικασίας μετατροπής και θα ανοίξει το παράθυρο του προγράμματος επεξεργασίας VBA, στο οποίο μπορείτε να δείτε τον προκύπτοντα κώδικα VBA (Εικ. 11.21).
  4. Η μακροεντολή μετατρέπεται σε συνάρτηση με το ίδιο όνομα Sales_Managers (τα κενά έχουν αντικατασταθεί με κάτω παύλες).

Σύκο. 11.21.Αποτέλεσμα μετατροπής της μακροεντολής "Διαχειριστές πωλήσεων"

Μετά τη μετατροπή, η αρχική μακροεντολή πωλήσεων δεν καταργήθηκε και μια νέα λειτουργική μονάδα με την ονομασία Converted Macro προστέθηκε στη λίστα λειτουργικών μονάδων στο παράθυρο της βάσης δεδομένων Northwind.

Υπάρχει ένας άλλος τρόπος για τη μετατροπή μακροεντολών σε λειτουργική μονάδα VBA:

  1. Επιλέξτε τη μακροεντολή Sales Managers στο παράθυρο βάσης δεδομένων Northwind.
  2. Επιλέξτε μια ομάδα Αρχείο, Αποθήκευση ως(Αρχείο, Αποθήκευση ως).
  3. Στο παράθυρο διαλόγου που εμφανίζεται Διατήρηση(Αποθήκευση ως), από την αναπτυσσόμενη λίστα As, επιλέξτε ένα στοιχείο Μονάδα μέτρησης(Ενότητα) (εικ. 11.22) και πατήστε το κουμπί ΕΝΤΑΞΕΙ.

Σύκο. 11.22.Αποθήκευση μιας μακροεντολής ως ενότητα

συμπεράσματα

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

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

Εργαστήριο Νο. 1 "Δημιουργία και μορφοποίηση πινάκων στο Excel"(μορφή εκπαίδευσης - πλήρους απασχόλησης, μερικής απασχόλησης) - διαδραστική φόρμα "Εργασία σε μικρές ομάδες".

1. Δημιουργήστε έναν πίνακα σύμφωνα με το δείγμα:

ΕΝΑ σι ντο ρε μι φά σολ
P / p Όχι. Πελάτης ημερομηνία Ώρα (ώρα, λεπτά) Ποσό, τρίψτε. Σημείωση.
κάθε μήνα ανά έτος
Βόρονιν 15. Φεβ 3,7 Υπηρέτης
Βόρονιν 18 Φεβρουαρίου 5,8 Υπηρέτης
Σκομπέλεφ 22 Φεβρουαρίου 3,5 Οθόνη
Vasin 15. Μαρ 4,9 Εκτυπωτής
Vasin 24. Μαρ 7,5 Μοντέμ
Βόρονιν 05. Απρ 4,6 Υπηρέτης
Σκομπέλεφ 20.apr 3,8 Οθόνη
Σκομπέλεφ 25 Απριλίου 7,2 Εκτυπωτής
ΣΥΝΟΛΟ

4. Ορίστε τις παραμέτρους της σελίδας: περιθώρια - όλα 1,5 cm, μορφή A4, βιβλίο.

5. Συμπληρώστε την αρίθμηση γραμμής από 1 έως 8 με αυτόματη αρίθμηση.

6. Αντιστοιχίστε τη μορφή ημερομηνίας σε ημερομηνίες - 14 Μαρτίου 01, στα ποσά - νομισματική μορφή.

Στον πίνακα που δημιουργήθηκε (δείτε παραπάνω):

1. Επισημάνετε τις τιμές μεταξύ 200 και 300 με μπλε πλάγια γραφή, μεταξύ 2500 και 3500 με κόκκινο πλάγιο (χρησιμοποιώντας μορφοποίηση υπό όρους).

2. Ταξινομήστε τη στήλη "Πελάτης" αλφαβητικά σε αύξουσα σειρά.

3. Δημιουργία γραφημάτων: ένα γράφημα ράβδων "πελάτης - χρόνος που δαπανάται", γράφημα πίτας - "πελάτης - σύνολο για το έτος" (με τίτλους και ετικέτες δεδομένων).

10. Προσθέστε μια κεφαλίδα: Φόρμα 067-15-887.

11. Τοποθετήστε τον πίνακα και τα διαγράμματα σε μία σελίδα, ορίστε τα περιθώρια 1,5 cm. ορίστε την οριζόντια και κάθετη κεντρική στοίχιση. προσθήκη γενικής κεφαλίδας - ΠΕΛΑΤΕΣ X-RING, εισαγάγετε μια φωτογραφία.

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

1. Περιγράψτε τους τύπους και τις μορφές των δεδομένων, την παρουσίαση των δεδομένων σε ένα κελί.

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

3. Μορφοποίηση υπό όρους δεδομένων με βάση την αξία και τα αποτελέσματα των υπολογισμών.

4. Ποια είναι η διαφορά μεταξύ απόλυτων και σχετικών συνδέσμων.

5. Περιγράψτε πώς να χρησιμοποιήσετε τον Οδηγό λειτουργίας.

6. Περιγράψτε τον τρόπο εισαγωγής και μορφοποίησης γραφημάτων στο υπολογιστικό φύλλο.

7. Πώς μπορώ να εισαγάγω ένα γραφικό σε ένα υπολογιστικό φύλλο;

Τμήμα 8.1. - ένας.

Ενότητα 8.2. - 1, 2, 3.

Εργαστηριακό έργο Νο. 2 «Master of functions in Excel. Απόλυτοι και σχετικοί σύνδεσμοι "

1. Δημιουργήστε έναν πίνακα:

ΕΝΑ σι ντο ρε μι
Μισθός του τμήματος "Μάρκετινγκ" το 1ο τρίμηνο
Επώνυμο Ιανουάριος Φεβρουάριος Μάρτιος %
Ιβάνοφ 0,20
Παύλοφ 0,30
Αντόνοφ 0,25
Κάρποφ 0,28
Νεκράσοφ 0,21
Postnikov 0,32
Αβέριν 0,15
Γιακούσεφ 0,22
Vasin 0,27
Όγκος πωλήσεων, $
Μέση συναλλαγματική ισοτιμία δολαρίου, τρίψιμο.

- (COS (1,2) + SIN (0,7)) * ROOT (9) / 4;

- οι ρίζες της τετραγωνικής εξίσωσης x 2 - 5x + 6 = 0 ·

Εργασίες αυτο-μελέτης

- όλες οι τιμές του "Σύνολο",

- ΜΕΣΟΣ (C3: C17) * MAX (E3: E17) / 32;

Για να ολοκληρώσετε την πρακτική εργασία, είναι απαραίτητο να κυριαρχήσετε στις ακόλουθες ενότητες του θέματος 3.4: υπολογισμοί με τύπους. απόλυτες και σχετικές αναφορές σε κελιά και μπλοκ κυττάρων · αντιγραφή τύπων · χρησιμοποιώντας μια συνάρτηση σε τύπους · ταξινόμηση συναρτήσεων στο MS Excel. εφαρμογή του οδηγού συνάρτησης.

Ερωτήσεις δοκιμής για αυτοέλεγχο

1. Ποιοι τύποι ενσωματωμένων λειτουργιών μπορούν να χρησιμοποιηθούν σε ένα υπολογιστικό φύλλο;

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

3. Τι είναι η μορφή κελιού; Ποιες τεχνικές για τη μορφοποίηση δεδομένων σε κελιά γνωρίζετε;

4. Πώς εκτελούνται οι υπολογισμοί στο MS Excel χρησιμοποιώντας τύπους; Πώς εισάγεται η συνάρτηση στον τύπο; Πώς προσδιορίζονται οι αναφορές σε ορίσματα συναρτήσεων;

6. Τι δίνει ο μηχανισμός αντιγραφής τύπου;

7. Τι είναι το «αυτόματο άθροισμα» και πώς γίνεται;

Τμήμα 8.1. - ένας.

Ενότητα 8.2. - 1, 2, 3.

Εργαστηριακό έργο No. 3 "Λειτουργίες Matrix στο Excel"(μορφή εκπαίδευσης - πλήρους απασχόλησης, μερικής απασχόλησης) - διαδραστική φόρμα "Κατάρτιση".

1. Βρείτε το προϊόν των πινάκων:

–6 –7
;
*
*
–8 –12 –2 –6
–4

2. Λύστε τα συστήματα εξισώσεων:

X 1 - x 2 + x 3 = 3, x 1 + 2x 2 + 3x 3 - 2x 4 = 6, 2x - 3y + z –2 = 0,

2x 1 + x 2 + x 3 = 11, 2x 1 + 4x 2 - 2x 3 - 3x 4 = 18, x + 5y - 4z + 5 = 0,

x 1 + x 2 + 2x 3 = 8,3x 1 + 2x 2 - x 3 + 2x 4 = 4, 4x + y - 3z + 4 = 0.

2x 1 - 3x 2 + 2x 3 + x 4 = - 8.

3x + 2y + z = 5, x - 2y + 3z = 6, 4x - 3y + 2z = 9,

2x + 3y + z = 1, 2x + 3y - 4z = 20, 2x + 5y - 3z = 4,

2x + y + 34z = 11,3x - 2y - 5z = 6,5x + 6y - 2z = 18.

Εργασίες αυτο-μελέτης

1. Βρείτε το προϊόν των πινάκων:

*
6
*
1
–3
;
12
–2 –6
–5 –3 –5 –1

2. Λύστε τα συστήματα εξισώσεων:

X + y + 2z = - 1, x + y + 2z = - 1, 2x - y - z = 4,

2x - y - 3z = 4, 2x - y + 2z = - 4, 3x + 4y - 2z = 11,

5x + 6y - 2z = 18,4x + y + 4z = - 2,3x - 2y + 4z = 11.

3x + 4y + 2z = 8, 4x + 7y - 3z = - 10, - 3x + 6y + 8z = - 7,

2x - y - 3z = - 4, 2x + 9y - z = 8, 9x - 11y - 15z = - 15,

x + 5y + z = 1.x - 6y + 3z = - 3.18x - 22y + 3z = - 3 .

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

Ερωτήσεις δοκιμής για αυτοέλεγχο

1. Περιγράψτε τη σειρά του πολλαπλασιασμού της μήτρας.

2. Περιγράψτε τη διαδικασία επίλυσης συστημάτων γραμμικών εξισώσεων.

3. Διατυπώστε τον κανόνα για τον πολλαπλασιασμό της μήτρας με την αναλογία του αριθμού σειρών και στηλών.

4. Ποια ενσωματωμένη συνάρτηση χρησιμοποιείται για πολλαπλασιασμό μήτρας;

5. Ποιες ενσωματωμένες συναρτήσεις χρησιμοποιούνται για την επίλυση συστημάτων γραμμικών εξισώσεων;

Τμήμα 8.1. - ένας.

Ενότητα 8.2. - 1, 2, 3.

Εργαστήριο αρ. 4 "Χρήση ομαδικών λειτουργιών στο Excel"(μορφή εκπαίδευσης - πλήρους απασχόλησης, μερικής απασχόλησης) - διαδραστική φόρμα "brainstorming".

1. Δημιουργήστε και συμπληρώστε τον πίνακα με τουλάχιστον 10 εγγραφές:

2. Ταξινόμηση της λίστας με τη σειρά "ημέρα - ομάδα - επίθετο επίθετο".

3. Στη γενική λίστα:

- προσθέστε την επικεφαλίδα "Περιοχή" και δεδομένα (από τον αριθμό τηλεφώνου):

- προσθέστε ένα νέο είδος ταξινόμησης με την ακόλουθη σειρά:

Strogino, Khimki, Vykhino, Krylatskoe, Taganskaya,

- ταξινόμηση της λίστας με το δημιουργημένο στοιχείο.

4. Χρήση αυτόματου φίλτρου:

- εμφάνιση επωνύμων που ξεκινούν με "K" και περιέχουν "p" ·

- 599 μαθητές σχολείου

- μαθητές της 1ης ομάδας ·

- μαθητές της 2ης και 3ης ομάδας κάθε Δευτέρα και Τρίτη.

5. Χρησιμοποιώντας το προηγμένο φίλτρο, δείξτε τον αριθμό των μαθητών σύμφωνα με τις συνθήκες 1-6:

Όρος Όχι Επίθετο όνομα Σχολείο Τάξη Τηλέφωνο Ημέρα Ομάδα
P * B * C *
Σαβ
Μον Τρίτη
κάθισε

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

7. Δημιουργία συγκεντρωτικών πινάκων:

- ο αριθμός των μαθητών ανά τάξη από σχολεία ·

- ο αριθμός των μαθητών ανά ημέρα από ομάδες ·

- ο αριθμός των μαθητών ανά ημέρα από τα μαθήματα.

Εργασίες αυτο-μελέτης

1. Συμπληρώστε τον πίνακα από την εργαστηριακή εργασία Νο. 2: προσθήκη - επικεφαλίδα: "Εκτίμηση κόστους HOUSE", πλαίσιο, επισημάνετε τις επικεφαλίδες των στηλών σε διαφορετική μορφή.

2. Ταξινομήστε τα δεδομένα "Έξοδα" αλφαβητικά, εμφανίστε αθροίσματα (ποσά) ανά τύπο εξόδων.

3. Δημιουργήστε ένα διάγραμμα σε ξεχωριστό φύλλο για το σημείο 3 "Έξοδα - ποσό" (δεδομένα σε σειρές), μετονομάστε το φύλλο με το διάγραμμα σε "Έξοδα - ποσό".

4. Ταξινομήστε τα δεδομένα κατά "παραλήπτη", δείξτε το ποσό των εξόδων για κάθε παραλήπτη.

5. Αφαιρέστε τα σύνολα, χρησιμοποιήστε το αυτόματο φίλτρο για να εμφανίσετε τα δεδομένα για τον παραλήπτη Prestige JSC.

6. Με τη βοήθεια ενός αυτόματου φίλτρου, δείξτε τα δεδομένα για τον Ιανουάριο, δημιουργήστε ένα γράφημα "Ημερομηνία - άθροισμα" και μετονομάστε τα.

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

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

Ερωτήσεις δοκιμής για αυτοέλεγχο

1. Πώς χρησιμοποιούνται οι ενσωματωμένες λίστες αυτόματης συμπλήρωσης;

2. Τι είναι η αυτόματη συμπλήρωση ενός μπλοκ κελιών;

3. Πώς να προετοιμάσετε μια λίστα για αυτόματη συμπλήρωση;

4. Ποια είναι η διαφορά μεταξύ εργασίας με αυτόματο φίλτρο και προηγμένου φίλτρου;

5. Πώς εκτελείται η ταξινόμηση πολλών επιπέδων λιστών;

6. Ποια είναι τα χαρακτηριστικά του σχηματισμού λιστών;

7. Πώς εκτελείται η λειτουργία υπολογισμού των αθροισμάτων;

Τμήμα 8.1. - ένας.

Ενότητα 8.2. - 1, 2, 3.

Εργαστήριο αρ. 5 "Δημιουργία μακροεντολών στο Excel"(μορφή εκπαίδευσης - πλήρους απασχόλησης) - διαδραστική φόρμα "Brainstorming".

1. Εγγραφή μακροεντολών για δημιουργία πινάκων με σχετικές αναφορές και κλήση με τη συντόμευση πληκτρολογίου CTRL + T και CTRL + P.

Ομαδικό πρόγραμμα μαθήματος για 1 εξάμηνο
Δευ έως - τ Τρ έως - τ Νυμφεύω έως - τ ου έως - τ Παρ έως - τ

Εργασίες αυτο-μελέτης

1. Καταγράψτε ένα πρότυπο μακρο - συνέχισης.

2. Δημιουργήστε μια μακροεντολή που διαμορφώνει οποιοδήποτε επιλεγμένο διάστημα.

3. Δημιουργήστε μια μακροεντολή που εισάγει κείμενο και τη μορφοποιεί πάντα στα ίδια κελιά.

Για να προετοιμαστείτε για την εργαστηριακή εργασία και να εκτελέσετε ανεξάρτητη εργασία, πρέπει να μάθετε τις ακόλουθες ενότητες του θέματος 3.4: πώς να δημιουργήσετε και να εκτελέσετε μακροεντολές στο Excel για να αυτοματοποιήσετε τις υπολογιστικές λειτουργίες.

Ερωτήσεις δοκιμής για αυτοέλεγχο

1. Διατυπώστε τον σκοπό δημιουργίας μακροεντολών στο Excel.

2. Περιγράψτε τον τρόπο αυτόματης εγγραφής μιας μακροεντολής.

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

4. Πώς να αντιστοιχίσετε μια συντόμευση πληκτρολογίου για την εκτέλεση μιας μακροεντολής;

5. Πώς να αντιστοιχίσετε ένα κουμπί στη γραμμή εργαλείων για την εκτέλεση μιας μακροεντολής;

Τμήμα 8.1. - ένας.

Μακροεντολή Ραντεβού
OpenForm Μπορεί να ανοίξει τη φόρμα σε λειτουργία προεπισκόπησης. Είναι δυνατό να εφαρμόσετε ένα φίλτρο και να ορίσετε τους όρους επιλογής
Ανοίξτε το αίτημα Μπορεί να ανοίξει ένα ερώτημα σε λειτουργία προεπισκόπησης
Άνοιγμα πίνακα Μπορεί να ανοίξει τον πίνακα σε λειτουργία προεπισκόπησης.
OutputInformat Εξάγει τον καθορισμένο πίνακα, ερώτημα, φόρμα, αναφορά ή λειτουργική μονάδα σε ένα αρχείο σε μορφή XLS, RTF ή TXT και εκκινεί επίσης την κατάλληλη εφαρμογή για την επεξεργασία του αρχείου.
Εκτύπωση Εκτυπώνει τον ενεργό πίνακα, φόρμα ή αναφορά. Μπορείτε να ορίσετε το εύρος των σελίδων που θα εκτυπώσετε, τον αριθμό των αντιγράφων και εάν θέλετε ή όχι να τοποθετήσετε αντίγραφα.
CommandMenu Εκτελεί μια εντολή στο κύριο μενού της Access
Παραγωγή Κλείνει όλα τα παράθυρα και εξέρχεται από την Access
Ξεκινήστε το Macro Εκτελεί μια άλλη μακροεντολή
Διακοπή AllMacros Διακόπτει την εκτέλεση όλων των μακροεντολών, συμπεριλαμβανομένης της μακροεντολής που ξεκίνησε αυτήν τη μακροεντολή
Προσθήκη μενού Προσθέτει ένα αναπτυσσόμενο μενού σε μια προσαρμοσμένη γραμμή μενού για μια φόρμα ή μια αναφορά. Τα ορίσματα αυτής της μακροεντολής καθορίζουν το όνομα της γραμμής μενού και το όνομα μιας άλλης μακροεντολής που περιέχει όλες τις εντολές που χρησιμοποιούνται στο μενού και όλες τις ενέργειες που αντιστοιχούν σε αυτές τις εντολές.
CommandMenu Εκτελεί μια εντολή από ένα από τα κύρια μενού της Access. Χρησιμοποιώντας αυτήν τη μακροεντολή σε μια προσαρμοσμένη γραμμή μενού, μπορείτε να εκτελέσετε εντολές στο προσαρμοσμένο μενού.
Πίνακες εντολών Θυμάται την ακολουθία των πλήκτρων που πατήθηκαν
Ορισμός τιμής Αλλάζει την τιμή οποιουδήποτε στοιχείου ελέγχου ή ιδιοκτησίας μπορεί να ενημερωθεί
Σήμα Μπιπ
Μήνυμα Εμφανίζει ένα προειδοποιητικό ή ενημερωτικό μήνυμα
Ορίστε μηνύματα Όταν είναι ενεργοποιημένο, το πλήκτρο Enter εκχωρείται ως κλειδί απόκρισης σε όλα τα μηνύματα προειδοποίησης ή πληροφοριακού συστήματος κατά τη διάρκεια της μακροεντολής εκτέλεσης. Για να ακυρώσετε την εμφάνιση μηνυμάτων, χρησιμοποιήστε αυτήν την εντολή σε συνδυασμό με τη μακροεντολή DisplayOnScreen που έχει οριστεί σε Απενεργοποίηση.
Απεικόνιση Εμφανίζει πληροφορίες σχετικά με τις ενδιάμεσες ενέργειες που εκτελούνται όταν εκτελείται η μακροεντολή
Επεκτείνουν Αυξάνει το μέγεθος του ενεργού παραθύρου σε πλήρες μέγεθος
Κατάρρευση Ελαχιστοποιεί το ενεργό παράθυρο σε ένα εικονίδιο
Μέγεθος μετατόπισης Αλλαγή μεγέθους του ενεργού παραθύρου
Επαναφέρω Επαναφέρει το παράθυρο στο αρχικό του μέγεθος

Τα ακόλουθα κουμπιά χρησιμοποιούνται για να λειτουργούν με μακροεντολές στη γραμμή εργαλείων (Εικ. 9.1.):

Κουμπί Ονόματα μακροεντολών(με την εικόνα "XYZ") εμφανίζει ή αφαιρεί τη στήλη " Όνομα μακροεντολής "όπου μπορείτε να αντιστοιχίσετε ονόματα σε μακροεντολές που περιλαμβάνονται στην ομάδα.

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

Κουμπί Εκτέλεση(με την εικόνα "!") εκτελεί τη μακροεντολή.

Κουμπί Βήμα βήμα(με ένα βέλος και μια λίστα) εκτελεί τη μακροεντολή βήμα προς βήμα.

Για την εξυπηρέτηση κάποιου αντικειμένου που περιλαμβάνεται στη βάση δεδομένων, μερικές φορές δημιουργείται ένα μεγάλο σύνολο μακροεντολών, καθένα από τα οποία αυτοματοποιεί κάποια πολύ συγκεκριμένη διαδικασία. Συνιστάται να συνδυάζονται όλες οι μακροεντολές που σχετίζονται με συμβάντα σε μια φόρμα ή αναφορά σε ξεχωριστό αντικείμενο (ομάδα) που αντιστοιχεί σε αυτήν τη φόρμα ή αναφορά. Κάθε μακροεντολή πρέπει να έχει ένα μοναδικό όνομα στην ομάδα. Όνομα αντικειμένου Μακροεντολήθα είναι το όνομα της ομάδας. Η κλήση μιας εντολής μακροεντολής από μια ομάδα μακροεντολών πραγματοποιείται καθορίζοντας το ακριβές όνομα της ομάδας μακροεντολών και την εντολή μακροεντολής στην ομάδα: GroupName.MacroName.

Η σειρά εκτέλεσης των μακροεντολών σε μια μακροεντολή μπορεί να αλλάξει. Για αυτό, οι προϋποθέσεις για την εκτέλεση ή παράλειψη μακροεντολών εισάγονται στη μακροεντολή. Οι συνθήκες καθορίζονται ως έκφραση σε μια στήλη Κατάσταση.

Ένας σύνδεσμος για μια φόρμα ή αναφορά αποτελείται από δύο μέρη: FamilyName! ObjectName. Όλες οι ανοιχτές φόρμες περιλαμβάνονται στην οικογένεια Φορμών, ανοιχτές αναφορές - στην οικογένεια Αναφορών. Για παράδειγμα, Φόρμες! [Παραγγελίες πελατών] ή Φόρμες! Πελάτης; σύνδεσμος προς αναφορά - Αναφορές! [Αναφορά πωλήσεων]. Εάν το όνομα του αντικειμένου περιέχει κενά ή ειδικούς χαρακτήρες, πρέπει να περικλείεται σε αγκύλες. Ένας σύνδεσμος προς μια ιδιότητα μιας φόρμας ή αναφοράς αποτελείται από τρία μέρη: FamilyName! ObjectName.PropertyName. Για παράδειγμα: Forms! Client. Display.

FamilyName! ObjectName! ItemName (για παράδειγμα, Φόρμες! [Παραγγελίες πελατών]! [Αριθμός πελάτη]);

FamilyName! ObjectName! ItemName.PropertyName (για παράδειγμα, Φόρμες! [Παραγγελίες πελατών]! [Πρόσβαση]).

Το έργο

1. Δημιουργήστε μια μακροεντολή που περιέχει τη μακροεντολή OpenForm. Η φόρμα πρέπει να ανοίξει χρησιμοποιώντας ένα κουμπί που βρίσκεται σε άλλη φόρμα.

2. Δημιουργήστε μια ομάδα που περιλαμβάνει την προηγούμενη μακροεντολή μαζί με τις νέες μακροεντολές. Κάντε την επιλογή των μακροεντολών κατά την κρίση σας.

3. Δημιουργήστε μια μακροεντολή με συνθήκες.

Παραγγελία εργασίας

Δημιουργία μακροεντολής

1. Στο παράθυρο Βάση δεδομένωνκάντε κλικ στην καρτέλα Μακροεντολέςκαι κάντε κλικ στο κουμπί Δημιουργώ ένα... Θα ανοίξει ένα παράθυρο σχεδιασμού μακροεντολών με το παράθυρο που φαίνεται στο Σχ. 9.1. (δεν θα υπάρχουν στήλες Όνομα μακροεντολήςκαι Κατάσταση). Κάθε γραμμή σε αυτό το παράθυρο μπορεί να περιέχει μια εντολή μακροεντολής και ένα σχόλιο σε αυτήν.

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

3. Συνιστάται να εισάγετε εξηγήσεις στη στήλη Σημείωση... Τα σχόλια καθιστούν ευκολότερη την κατανόηση και τη συντήρηση των μακροεντολών.

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

5. Αποθηκεύστε τη μακροεντολή. Για να το κάνετε αυτό, μπορείτε να χρησιμοποιήσετε το κουμπί Σώσειή εκτελέστε την εντολή ΑΡΧΕΙΟ / Αποθήκευση... Δώστε στη μακροεντολή ένα όνομα (το όνομα πρέπει να έχει νόημα).

6. Εκτελέστε τη μακροεντολή για εκτέλεση.

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

Στη λειτουργία σχεδιασμού μακροεντολών (βλ. Εικ. 9.1.), Κάντε κλικ στο κουμπί Εκτέλεση;

Εκτέλεση εντολής ΥΠΗΡΕΣΙΑ / Εκτέλεση μακροεντολήςκαι επιλέξτε από τη λίστα το όνομα της μακροεντολής που θα εκτελεστεί.

Στο παράθυρο Βάση δεδομένωνστην καρτέλα Μακροεντολέςκάντε διπλό κλικ στο όνομα της μακροεντολής που θα εκτελεστεί.

7. Ανοιχτό σε Λειτουργία κατασκευαστήκάποια μορφή διαφορετική από τη μορφή για την οποία αναπτύσσεται η μακροεντολή.

8. Δημιουργήστε ένα κουμπί τοποθετώντας το στην περιοχή τίτλου μιας ανοιχτής φόρμας. Ανοίξτε το παράθυρο ιδιοτήτων του κουμπιού (Εικ. 9.2): επιλέξτε το κουμπί, πατήστε το δεξί κουμπί του ποντικιού, στο μενού που εμφανίζεται, επιλέξτε Ιδιότητες αντικειμένου(μπορείτε να ανοίξετε το παράθυρο ιδιοτήτων κάνοντας διπλό κλικ στο κουμπί). Στο παράθυρο ιδιοτήτων, καθορίστε με ποιο συμβάν συσχετίζεται η μακροεντολή. Από προεπιλογή, αυτό το συμβάν Πιέστε το κουμπί.

Δημιουργία ομάδων μακροεντολών

Συνδυάστε μακροεντολές σε μια ομάδα μακροεντολών (μπορείτε να δημιουργήσετε ένα νέο αντικείμενο ή να μετατρέψετε μια μακροεντολή που δημιουργήθηκε προηγουμένως σε μια ομάδα μακροεντολών).

1. Ανοίγω Κατασκευαστής μακροεντολών.

2. Κάντε κλικ στο κουμπί Ονόματα μακροεντολώνστη γραμμή εργαλείων. Στο παράθυρο Κατασκευαστής μακροεντολώνθα εμφανιστεί μια άλλη στήλη Όνομα μακροεντολής.

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

4. Παράλειψη της γραμμής.

5. Εισαγάγετε το όνομα της επόμενης μακροεντολής και τις αντίστοιχες μακροεντολές. Στην εικ. 9.3, για παράδειγμα, παρουσιάζεται η μακροεντολή "Προμηθευτές" της βάσης δεδομένων "Northwind".

6. Ελέγξτε εάν η μακροεντολή λειτουργεί. Εκτελέστε την εντολή ΥΠΗΡΕΣΙΑ / Εκτέλεση μακροεντολής(θα εκτελεστεί μόνο η πρώτη μακροεντολή από την ομάδα μακροεντολών) . Η κλήση άλλων μακροεντολών από την ομάδα είναι δυνατή εισάγοντας το όνομα της μακροομάδας στο παράθυρο διαλόγου και καθορίζοντας το όνομα της μακροεντολής μέσω μιας κουκκίδας.

7. Αποθηκεύστε τη μακροεντολή.

Δημιουργία μακροεντολής υπό όρους

Για παράδειγμα, στο Σχ. 9.4 Παρουσιάζεται το παράθυρο για το σχεδιασμό μιας μακροεντολής, το οποίο θα εμφανίζει έναν πίνακα για τα προϊόντα στην αποθήκη της εταιρείας. Τραπέζι "Προϊόντα σε απόθεμα"θα ανοίξει μόνο όταν βρίσκεστε στο πεδίο Τιμήσχήμα θα εισαχθεί τιμή μικρότερη από 1000. Η μακροεντολή σχετίζεται με ένα στοιχείο ελέγχου Τιμήσε σχήμα "Εμπορεύματα που πωλούνται από την αποθήκη"... Σύνδεση αυτής της μακροεντολής με ένα στοιχείο ελέγχου Τιμήσυμβαίνει με τον ίδιο τρόπο με τη σύνδεση μιας μακροεντολής κουμπιού. Η μακροεντολή θα συνδεθεί είτε σε ένα συμβάν Παραγωγήή με την εκδήλωση είσοδος.

1. Ανοίγω Κατασκευαστής μακροεντολών.

2. Κάντε κλικ στο κουμπί Κατάσταση.Γράψτε στη στήλη Κατάστασημια έκφραση που, εάν είναι αληθινή, θα εκτελέσει τη δημιουργημένη μακροεντολή. Είναι πιο βολικό να καθορίσετε εκφράσεις για την κατάσταση στο παράθυρο. Κατασκευαστής έκφρασης.

3. Ορίστε τη μακροεντολή.

4. Αποθηκεύστε τη μακροεντολή.

5. Ανοιχτό σε Λειτουργία κατασκευαστήμια μορφή στην οποία ένα από τα στοιχεία ελέγχου υποτίθεται ότι σχετίζεται με την ανεπτυγμένη μακροεντολή. Συνδέστε ένα στοιχείο ελέγχου και μια μακροεντολή.

6. Ελέγξτε εάν η μακροεντολή λειτουργεί.

Συνημμένο 1

Στατιστικές συναρτήσεις

Λειτουργία Περιγραφή
Αθροισμα Υπολογίζει το άθροισμα όλων των τιμών στο καθορισμένο πεδίο σε κάθε ομάδα. Χρησιμοποιείται μόνο για αριθμητικά και νομισματικά πεδία.
Μέσος όρος Υπολογίζει τον αριθμητικό μέσο όρο όλων των τιμών στο καθορισμένο πεδίο σε κάθε ομάδα. Χρησιμοποιείται μόνο για αριθμητικά και νομισματικά πεδία. Οι μηδενικές τιμές δεν περιλαμβάνονται στους υπολογισμούς.
Ελάχ. (Μέγ.) Επιστρέφει τη μικρότερη (μεγαλύτερη) τιμή που βρίσκεται στο καθορισμένο αριθμητικό πεδίο σε κάθε ομάδα. Για πεδία κειμένου, οι μικρότερες από τις τιμές χαρακτήρων, ανεξάρτητα από την περίπτωση. Οι μηδενικές τιμές αγνοούνται.
μετρώ Επιστρέφει τον αριθμό των εγγραφών στις οποίες οι τιμές αυτού του πεδίου δεν είναι μηδενικές. Το Count (*) χρησιμοποιείται για τον υπολογισμό των τιμών Null
StDev * Υπολογίζει την προκατειλημμένη στατιστική τυπική απόκλιση για όλες τις τιμές σε αυτό το πεδίο σε κάθε ομάδα. Ισχύει για αριθμητικά και νομίσματα. Επιστρέφει το Null εάν υπάρχουν λιγότερες από δύο σειρές στην ομάδα.
StDevP * Υπολογίζει την αμερόληπτη στατιστική τυπική απόκλιση
Var * Υπολογίζει την προκατειλημμένη στατιστική διακύμανση για όλες τις τιμές στο δεδομένο πεδίο σε κάθε ομάδα. Ισχύει για αριθμητικά και νομίσματα. Επιστρέφει το Null εάν υπάρχουν λιγότερες από δύο σειρές στην ομάδα.
VarP * Υπολογίζει αμερόληπτη στατιστική διακύμανση
Πρώτο * Επιστρέφει την πρώτη τιμή στο καθορισμένο πεδίο.
Τελευταίος * Επιστρέφει την τελευταία τιμή στο καθορισμένο πεδίο.

Σημείωση: οι λειτουργίες που σημειώνονται με * είναι in Οδηγός ερωτήματοςδεν ισχύουν.


Προσάρτημα 2

Κατασκευαστής έκφρασης

Το Expression Builder είναι ένα εργαλείο για τη δημιουργία σύνθετων εκφράσεων. Δομή παραθύρου Κατασκευαστής έκφρασηςφαίνεται στο Σχ. Α.2.1.

Πλαίσιο κειμένου έκφρασης

Εκφραση- ένα σύνολο τελεστών και τελεστών (σταθερές, αναγνωριστικά και λειτουργίες).

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

Τα αναγνωριστικά είναι τα ονόματα των σταθερών και των μεταβλητών που χρησιμοποιούνται στα προγράμματα της Visual Basic for Applications, καθώς και οι ονομαστικές σταθερές True, False, Yes, No, Null.

Λειτουργίες- επιστρέψτε την τιμή στην παράσταση αντί για το όνομα της συνάρτησης. Οι περισσότερες συναρτήσεις απαιτούν παρενθέσεις γύρω από τα ορίσματά τους. Ένα παράδειγμα μιας συνάρτησης με μια κενή λίστα ορισμάτων: Ημερομηνία ()- επιστρέφει την τρέχουσα ημερομηνία.

Υπάρχουν έξι κατηγορίες τελεστών για τη δημιουργία εκφράσεων, οι οποίες παρουσιάζονται στον Πίνακα 2.1.

Πίνακας Σ. 2.1

Τελεστές για τη δημιουργία εκφράσεων

Κατηγορία χειριστή Χειριστής Παράδειγμα Περιγραφή
Αριθμητικοί τελεστές + [Σύνολο] + [Επιβάρυνση] Προσθέτει δύο τελεστές
- Ημερομηνία () - 7 Μετρά τη διαφορά δύο τελεστών
* [Κουτιά] * [τιμή] Πολλαπλασιάζει δύο τελεστές
/ [Ποσό] / 5,33 Διαιρεί τον ένα τελεστή από τον άλλο
\ [Ποσότητα] \ 2 Χωρίζει έναν ολόκληρο τελεστή σε έναν άλλο ολοκληρωμένα. Σε αυτήν την περίπτωση, τελεστές με δεκαδικά κλάσματα στρογγυλοποιούνται στον πλησιέστερο ακέραιο
Mod [Boxes] Mod 3 Επιστρέφει το υπόλοιπο του κλάδου στο σύνολό του
^ [Α] ^ [β] Αυξάνει τον τελεστή Α στην ισχύ β
Χειριστές σύγκρισης 1 < 1 < 100 Πιο λιγο
<= [ένα]<= 2 Λιγότερο ή ίσο
= [b] = 3 Εξίσου
> [a]> 2 Περισσότερο
>= [b]> = 3 Μεγαλύτερο από ή ίσο
<> 1<>100 Όχι ίσο
Λογικοί τελεστές 2 Και [Α] Και [Β] Σύζευξη (λογικό AND)
Ή [A] Ή [B] Διασύνδεση (Boolean Or)
Δεν Δεν είναι] Λογική άρνηση
Ξορ [A] Xor [B] Αποκλειστική Ή
Εξ [A] Eqv [B] Λογική ισοδυναμία
Διαβολάκι [A] Imp [B] Λογική επίπτωση
Τελεστές συνεννόησης + "Visual" + "Basic" Συνδυάζοντας δύο κείμενο
& "Visual" & "Basic" τιμές σε μία γραμμή. Και οι δύο τελεστές είναι ισοδύναμοι, αλλά & προτιμάται
Συνέχιση του πίνακα A.2.1
Τελεστές αναγνώρισης ! ObjectClass! Όνομα αντικειμένου Διαχωριστής σε αναφορές αντικειμένων
. ObjectName.M Method Διαχωριστής σε αναφορές σε μεθόδους και ιδιότητες αντικειμένων
Τελεστές σύγκρισης προτύπων Μεταξύ Μεταξύ (-100) και (100) Καθορίζει εάν μια αριθμητική τιμή βρίσκεται σε ένα συγκεκριμένο εύρος
Είναι [Όνομα] είναι μηδέν Χρησιμοποιείται μόνο για σύγκριση με μια τιμή. Στο παράδειγμα, η έκφραση αξιολογείται ως αληθής όταν δεν υπάρχουν δεδομένα στο πεδίο Όνομα.
Σε Σε ("Μόσχα", "Κίεβο", "Μούρμανσκ") Καθορίζει εάν μια τιμή συμβολοσειράς είναι ένα στοιχείο μιας λίστας τιμών
Σαν Όπως "Yves *" Όπως "db ??" Καθορίζει αν μια τιμή συμβολοσειράς ξεκινά με τους καθορισμένους χαρακτήρες (ο χαρακτήρας "*" σημαίνει οποιονδήποτε αριθμό χαρακτήρων, "?" Σημαίνει μόνο έναν χαρακτήρα)

Σημειώσεις:

1. Το αποτέλεσμα της χρήσης τελεστών σύγκρισης είναι True ή False. Εάν ένας από τους τελεστές είναι Null, τότε οποιαδήποτε σύγκριση επιστρέφει Null.

2. Το αποτέλεσμα της χρήσης λογικών τελεστών είναι True ή False. Οι τελεστές έχουν μια τιμή από το σετ (True, False, Null). Για όλους τους τελεστές Boolean εκτός από την Imp, μια τιμή τελεστής Null οδηγεί σε μια τιμή μηδενικού αποτελέσματος.

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

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

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

Για να προσθέσετε ένα στοιχείο από τη λίστα σε μια έκφραση πλαισίου κειμένου, μπορείτε να κάνετε διπλό κλικ σε αυτό ή να το επιλέξετε και να κάνετε κλικ στο κουμπί Επικόλληση.


Προσάρτημα 3

Κουμπιά εργαλειοθήκης ΠΡΟΣΒΑΣΗ

Κουμπί Όνομα κουμπιού Λειτουργία
Επιλογή αντικειμένου Μετατρέπει το δείκτη του ποντικιού σε εργαλείο επιλογής
Δάσκαλοι Ενεργοποιεί ή απενεργοποιεί τους Νέους οδηγούς ελέγχου
Επιγραφή Κείμενο επικεφαλίδων, λεζάντων ή επεξηγήσεων, αυτό το κείμενο παραμένει αμετάβλητο
Πεδίο Δημιουργεί ένα πεδίο για την εμφάνιση και επεξεργασία δεδομένων κειμένου
Ομάδα Δημιουργεί ένα πλαίσιο για την τοποθέτηση διακοπτών, κουμπιών επιλογής, πλαισίων ελέγχου. Μόνο ένα από τα αντικείμενα με πλαίσιο μπορεί να επιλεγεί κάθε φορά. Κάθε στοιχείο του πλαισίου έχει έναν μοναδικό αριθμό
Πλαίσιο ελέγχου διακόπτη Εναλλαγή, εναλλαγή, πλαίσιο ελέγχου που δεν περιλαμβάνεται σε μια ομάδα ορίζει μια δυαδική τιμή Ναι (Ναί)ή όχι (Οχι), επιτρέπεται η χρήση True (Αληθής)ή οποιοσδήποτε θετικός αριθμός, Λάθος (Ψευδής)ή μηδέν
Κουτί συνδυασμού Δημιουργεί ένα σύνθετο πλαίσιο που περιέχει ένα πεδίο εισαγωγής τιμής και ένα πλαίσιο λίστας από το οποίο μπορείτε να επιλέξετε μια τιμή από ένα σύνολο τιμών
Λίστα Δημιουργεί μια αναπτυσσόμενη λίστα για την επιλογή τιμών
Κουμπί Δημιουργεί ένα κουμπί που, όταν κάνετε κλικ, ξεκινά μια ρουτίνα συμβάντων Access VBA
Εικόνα Προσθέτει ένα bitmap σε μια φόρμα ή αναφορά. Η εικόνα δεν είναι αντικείμενο OLE, αφού τοποθετηθεί στη φόρμα, δεν μπορεί να αλλάξει
Δωρεάν πλαίσιο Προσθέτει ένα αντικείμενο OLE σε μια φόρμα ή αναφορά
Συνημμένο πλαίσιο Εμφανίζει τα περιεχόμενα ενός πεδίου εγγραφής OLE εάν το πεδίο έχει ένα γραφικό αντικείμενο, διαφορετικά εμφανίζεται το εικονίδιο του αντικειμένου
Συνέχεια 3
Διακοπή σελίδας Όταν εκτυπώνετε μια φόρμα ή μια αναφορά, αναγκάζει τον εκτυπωτή να ξεκινήσει μια νέα σελίδα κατά το διάλειμμα της σελίδας. Το διάλειμμα δεν εμφανίζεται σε προβολή φόρμας ή αναφοράς
Σετ καρτελών Εισάγει ένα σύνολο καρτελών για να δημιουργήσει μια φόρμα διαχωρισμένη με καρτέλες.
Δευτερεύουσα μορφή / αναφορά Προσθέτει δευτερεύουσα φόρμα / αναφορά στην κύρια φόρμα / αναφορά
Ορθογώνιο γραμμής Χρησιμοποιούνται για να διαιρέσουν τη φόρμα σε λογικές ομάδες για την προσομοίωση πλαισίων, περιθωρίων. Το χρώμα, το πλάτος της γραμμής, το ορθογώνιο γέμισμα ρυθμίζονται χρησιμοποιώντας τη γραμμή εργαλείων μορφοποίησης
Πρόσθετα στοιχεία

Προσάρτημα 4

ΛΙΣΤΑ ΕΛΕΓΧΟΥ

1. Ποια είναι η διαδικασία για τον ορισμό της δομής της βάσης δεδομένων στο ACCESS DBMS;

2. Σε ποια κατάσταση περιγράφεται η δομή του πίνακα βάσης δεδομένων;

3. Δώστε ορισμούς των όρων: "αντικείμενο", "ιδιότητα", "μέθοδος", "συμβάν".

4. Ποιοι τύποι αντικειμένων είναι ορατοί στο παράθυρο ACCESS DB;

5. Ποια επέκταση γίνεται αποδεκτή για αρχεία βάσης δεδομένων;

6. Μπορώ να αλλάξω τη δομή του πίνακα μετά τη δημιουργία του;

7. Ποιοι τύποι πεδίων βάσης δεδομένων παρέχονται στο ACCESS;

8. Ποιοι είναι οι κανόνες για την ονομασία πεδίων βάσης δεδομένων;

9. Ποιες πληροφορίες μπορούν να αποθηκευτούν στα πεδία OLE Object;

10. Ποιες ιδιότητες του πεδίου πρέπει να οριστούν απαραίτητα;

11. Εξηγήστε τον σκοπό του πρωτεύοντος κλειδιού στη σχεσιακή βάση δεδομένων. Ποιοι είναι οι περιορισμοί στις βασικές τιμές-κλειδιά;

12. Εξηγήστε τον σκοπό των δεικτών.

13. Είναι δυνατόν να δημιουργήσετε ένα ευρετήριο σε ένα μέρος ενός πεδίου; Εάν ναι, πώς το κάνετε;

14. Ποιοι τύποι ελέγχου δεδομένων μπορούν να εκτελεστούν αυτόματα στο ACCESS DBMS;

15. Γιατί είναι απαραίτητο να περιγράψουμε τις σχέσεις μεταξύ πινάκων βάσης δεδομένων;

16. Σε ποια κατάσταση πρέπει να περιγράψετε τις σχέσεις μεταξύ πινάκων;

17. Τι είδους συνδέσμους υποστηρίζει η ACCESS;

18. Ποια επίδραση έχει η ρύθμιση των συνδέσμων στην εισαγωγή και αλλαγή πληροφοριών στη βάση δεδομένων;

19. Ποια είναι τα καθήκοντα εισαγωγής και διόρθωσης δεδομένων στη βάση δεδομένων;

20. Ποιες τυπικές λειτουργίες περιλαμβάνει μια εργασία διόρθωσης δεδομένων;

21. Ποιες τεχνικές ελέγχου δεδομένων είναι διαθέσιμες στο ACCESS;

22. Πότε εκτελείται η επικύρωση δεδομένων;

23. Πώς να προσθέσετε μια νέα εγγραφή στον πίνακα;

24. Πώς μπορώ να διαγράψω μια εγγραφή από έναν πίνακα;

25. Είναι δυνατή η ανάκτηση πληροφοριών που έχουν διαγραφεί από τη βάση δεδομένων;

26. Πώς να βρείτε την απαιτούμενη τιμή στον πίνακα;

27. Πώς να αντικαταστήσετε σε όλες τις εγγραφές βάσης δεδομένων το όνομα του Zarya LLP με το Rassvet JSC;

28. Τι είναι ένα μοτίβο αναζήτησης, ποια σύμβολα χρησιμοποιούνται στο μοτίβο και για τι;

29. Για ποιο σκοπό και πώς γίνεται η ταξινόμηση των αρχείων βάσης δεδομένων;

30. Πώς συμπεριφέρονται τα δεδομένα σε άλλα πεδία του πίνακα όταν ταξινομούνται κατά το πεδίο "Εταιρεία";

31. Πώς μπορώ να ακυρώσω την ταξινόμηση δεδομένων;

32. Τι είναι ένα αίτημα και τι είδους αιτήματα υποστηρίζει το ACCESS;

33. Πώς να ορίσετε παραμέτρους κατά τη δημιουργία μιας επιλογής ερωτήματος με παραμέτρους;

34. Τι είναι οι συγκεντρωτικές (ομαδικές) λειτουργίες και πώς εφαρμόζονται σε ερωτήματα;

35. Πώς να προσδιορίσετε από ποιους πίνακες τα πεδία λαμβάνονται στο πρότυπο εξόδου κατά την κατασκευή ενός ερωτήματος;

36. Τι είναι ένα ερώτημα παραπομπής και πώς κατασκευάζεται;

37. Σε ποια κατηγορία γλωσσών ανήκει η SQL; Πώς χρησιμοποιείται η SQL για τη δημιουργία ερωτημάτων;

38. Ποια είναι η δομή ενός ερωτήματος SQL που περιέχει υποερωτήματα;

39. Είναι δυνατόν να περάσετε παραμέτρους σε ένα αίτημα από κάποια φόρμα, εάν είναι δυνατόν, τότε πώς να το κάνετε;

40. Είναι δυνατόν να εισαγάγετε δεδομένα σε πίνακες μέσω ερωτημάτων, εάν είναι δυνατόν, και σε ποιες περιπτώσεις, ποιοι είναι οι περιορισμοί που επιβάλλονται στους διασυνδεδεμένους πίνακες, κατά την εισαγωγή δεδομένων μέσω ερωτημάτων σε πίνακες;

41. Τι είναι τα πεδία ομαδοποίησης, μπορείτε να χρησιμοποιήσετε πολλά πεδία ομαδοποίησης ταυτόχρονα σε ένα ερώτημα και ποια είναι η σημασία του αποτελέσματος;

42. Τι είναι ένα ερώτημα για τη δημιουργία πίνακα, πώς λειτουργεί, τι πίνακα μπορείτε να δημιουργήσετε;

43. Πώς δημιουργούνται αιτήματα για αλλαγές στους πίνακες βάσης δεδομένων; Μπορείτε να συμπεριλάβετε αλλαγές σε πολλούς πίνακες σε ένα ερώτημα;

44. Τι είναι τα αιτήματα διαγραφής, πώς κατασκευάζονται; Σε τι μπορούν να χρησιμοποιηθούν αιτήματα διαγραφής; Μπορούν να υπάρχουν ερωτήματα αυτού του τύπου με παραμέτρους .;

45. Τι είναι τα υπολογιζόμενα πεδία σε ερωτήματα, σε τι χρησιμεύουν και πώς κατασκευάζονται;

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

48. Ποια είναι τα ορατά ή ορατά και αόρατα ή μη εμφανιζόμενα πεδία ερωτήσεων; Γιατί χρειαζόμαστε αόρατα πεδία ερωτημάτων;

49. Πώς στο Expression Builder μπορείτε να δείτε τα πεδία ενός συγκεκριμένου πίνακα, τα πεδία αυτού του ερωτήματος; Γιατί δεν είναι όλα τα πεδία ορατά στο Expression Builder κατά τη δημιουργία ενός ερωτήματος;

50. Πόσες βάσεις δεδομένων μπορούν να ανοίξουν ταυτόχρονα;

51. Τι ιδιότητες έχει το αντικείμενο "πίνακας";

52. Σκοπός του αντικειμένου "φόρμα". Τι ιδιότητες έχει το αντικείμενο "φόρμα";

53. Σας επιτρέπει το ACCESS να δημιουργήσετε φόρμες πολλαπλών οθονών;

54. Είναι δυνατόν να χρησιμοποιήσετε την ίδια φόρμα οθόνης για να εισαγάγετε πληροφορίες σε διαφορετικά αρχεία βάσης δεδομένων;

55. Πώς να ενσωματώσετε μια δευτερεύουσα φόρμα σε μια φόρμα;

56. Σκοπός του αντικειμένου "αναφορά". Ποιες ιδιότητες έχει το αντικείμενο "αναφορά";

57. Είναι δυνατόν να λάβετε μια αναφορά που περιέχει μόνο συνολικά σειρές; Εάν ναι, πώς;

58. Είναι δυνατόν να αλλάξετε το μήκος και τη μορφή του πεδίου στο έγγραφο εξόδου σε σύγκριση με αυτό που καθορίστηκε στο αρχείο βάσης δεδομένων;

59. Τι είναι μια μακροεντολή; Διορισμός μακροεντολών.

60. Τι τρόπους επιτρέπει το παράθυρο της βάσης δεδομένων για πίνακες, ερωτήματα και φόρμες; Πώς διαφέρουν από τις έγκυρες λειτουργίες μακροεντολών;

61. Πώς να εντοπίσετε σφάλματα στη λειτουργία μιας μακροεντολής;

62. Μπορεί το ACCESS να χρησιμοποιήσει δεδομένα που είναι αποθηκευμένα σε άλλες μορφές;

63. Πώς να δημιουργήσετε έναν πίνακα εισάγοντας δεδομένα από ένα φύλλο εργασίας EXCEL;

Η δημιουργημένη μακροεντολή πρέπει να εκτελεστεί. Υπάρχουν διάφοροι τρόποι εκτέλεσης μακροεντολών:

1. Μέσω μιας εντολής Μακροεντολές -> Μακροεντολή -> Υπηρεσία

2. Χρήση ενός συνδυασμού πλήκτρων που έχουν εκχωρηθεί στη μακροεντολή.

3. Με την εντολή μενού που έχει εκχωρηθεί σε αυτήν τη μακροεντολή.

4. Μέσω του κουμπιού που έχει εκχωρηθεί σε αυτήν τη μακροεντολή στη γραμμή εργαλείων.

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

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

1. Ομάδα Μακροεντολές -> Μακροεντολή -> Υπηρεσία- η τυπική έκδοση της κλήσης μιας μακροεντολής για εκτέλεση. Στο πλαίσιο διαλόγου Macro, επιλέξτε τη μακροεντολή που δημιουργήθηκε και κάντε κλικ στο κουμπί [Εκτέλεση]. Αυτή η μέθοδος είναι επίσης κατάλληλη για επεξεργασία και διαγραφή μιας μακροεντολής - τα κουμπιά [Επεξεργασία], [Διαγραφή].

2. Χρησιμοποιώντας τον συνδυασμό πλήκτρων (εικ. 2):

Σύκο. 2. Πλαίσιο διαλόγου. Διαμόρφωση του πληκτρολογίου για ανάθεσημακροεντολή

συντομεύσεις πληκτρολογίου στο Microsoft Word.

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

Στη συνέχεια, κάντε κλικ στο κουμπί [Εκχώρηση], το οποίο κάνει την ανάθεση.

3. Κλήση μιας εντολής στο μενού - πραγματοποιείται η τυπική ρύθμιση του μενού: προσθήκη ενός στοιχείου μενού που σχετίζεται με την κλήση μιας εντολής μακροεντολής:

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

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

4. Χρησιμοποιώντας το κουμπί που έχει εκχωρηθεί σε αυτήν τη μακροεντολή στη γραμμή εργαλείων (Εικ. 3):

Στο Word, όταν κάνετε κλικ στο κουμπί [Πάνελ] (βλέπε Εικ. 1) στο παράθυρο διαλόγου Εγγραφήεμφανίζεται το πλαίσιο διαλόγου μακροεντολών Προσαρμογήστην οποία η καρτέλα Εντολέςαπό σύνθετο κουτί Κατηγορίεςεπιλεγμένο Μακροεντολέςακολουθούμενο από το όνομα της μακροεντολής.

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

κάνοντας κλικ στο κουμπί [Αλλαγή επιλεγμένου αντικειμένου], μπορείτε να επιλέξετε το εικονίδιο που θέλετε για το κουμπί εκτελώντας την εντολή ü Επιλέξτε ένα εικονίδιο για ένα κουμπί(εικ. 4). Μπορείτε επίσης να επεξεργαστείτε το εικονίδιο χρησιμοποιώντας την εντολή Αλλάξτε το εικονίδιο για ένα κουμπί(παράθυρο Πρόγραμμα επεξεργασίας κουμπιών) (εικ. 5)

Σύκο. 3. Ρυθμίσεις πλαισίου διαλόγου για εκχώρηση σε μια μακροεντολή
κουμπιά γραμμής εργαλείων στο Microsoft Word.

Σύκο. 4. Πλαίσιο διαλόγου για την επιλογή ενός εικονιδίου για το κουμπί

Σύκο. 5. Κουμπιά επεξεργαστή πλαισίου διαλόγου

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

Αφού επιλέξετε τη μέθοδο κλήσης, εμφανίζεται μια μικρή γραμμή εργαλείων Διακοπή εγγραφήςπου περιέχει ένα κουμπί:

- [Διακοπή εγγραφής] - τερματίζει την εγγραφή της μακροεντολής.

[Παύση] - θέτει σε παύση την εγγραφή μακροεντολής (εικ. 6).

Σχ. 6 Πίνακας εγγραφής μακροεντολών στο Microsoft Word

  1. Τροποποίηση μακροεντολών

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

Σχ. 7 Διάλογος επεξεργαστή VBA

Η επεξεργασία μακροεντολών πραγματοποιείται χρησιμοποιώντας την εντολή Μακροεντολές... Στο πλαίσιο διαλόγου Μακροεντολή, στο πεδίο Ονομαεπιλέγεται το όνομα της μακροεντολής προς επεξεργασία. Η διαδικασία ξεκινά όταν κάνετε κλικ στο κουμπί [Debug]. Μπορείτε να καθορίσετε το όνομα μιας ανύπαρκτης μακροεντολής. Εάν κάνετε κλικ στο κουμπί [Δημιουργία], θα δημιουργηθεί μια νέα μακροεντολή και ο χρήστης θα μπορεί να την καταγράψει στο VBA.

Το κουμπί [Debug] χρησιμοποιείται για το άνοιγμα του παραθύρου επεξεργασίας μακροεντολών, το οποίο εμφανίζει τα περιεχόμενα της μακροεντολής στο VBA. Το παράθυρο επεξεργασίας μακροεντολών είναι παρόμοιο με ένα κανονικό παράθυρο εγγράφων, αλλά διακρίνεται από την απουσία χάρακα συντεταγμένων και την παρουσία ειδικής γραμμής εργαλείων. Μπορούν να ανοίξουν πολλά παράθυρα επεξεργασίας μακροεντολών. Το κείμενο μακροεντολών επεξεργάζεται με τον ίδιο τρόπο όπως το κανονικό κείμενο προγράμματος VBA. Σε αυτήν την περίπτωση, οι περισσότερες από τις εντολές επεξεργασίας κειμένου είναι διαθέσιμες, για παράδειγμα, οι εντολές αντίγραφοκαι Τομή.

Κάνοντας κλικ στο κουμπί [Διαγραφή] διαγράφεται η καθορισμένη μακροεντολή.

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

Βιβλιογραφία:

1. Musin K.A. "Τεχνικό συμπλήρωμα στο Microsoft Word"

2. Borodin A.I "Μακροπρογραμματισμός"

ΜΑΚΡΟΣ.

Οι περισσότεροι χρήστες δημιουργούν και χρησιμοποιούν έγγραφα του Microsoft Office χρησιμοποιώντας τυπικές δυνατότητες εφαρμογών. Ωστόσο, το Office παρέχει άφθονες ευκαιρίες για την αυτοματοποίηση της εργασίας με έγγραφα - πρόκειται για προγραμματισμό στο VBA και τη χρήση μακροεντολών.

Η VBA, η γλώσσα προγραμματισμού του Visial Basic for Applications, είναι μια γλώσσα προγραμματισμού ενσωματωμένη σε εφαρμογές του Office που χρησιμοποιείται για τη δημιουργία μακροεντολών.

Μακροεντολή και μαγνητόφωνο.

Αντί να επαναλαμβάνετε μονότονες εντολές στο MS Office, μπορείτε να δημιουργήσετε μια μακροεντολή που θα εκτελεί αυτόματα αυτήν την ακολουθία εντολών. Η μακροεντολή σάς επιτρέπει να εισάγετε μονόκλινομια εντολή που εκτελεί την ίδια εργασία με μια ομάδα εντολών.

Η μακροεντολή είναι ένα πρόγραμμα γραμμένο σε VBA. Το VBA είναι μια ειδική έκδοση του Visial Basic (για εφαρμογή).

Υπάρχουν 2 τρόποι για να δημιουργήσετε μια μακροεντολή στο Office:

§ Μακροφωνική συσκευή καταγραφής ενεργειών χρήστη

§ άνοιγμα παραθύρου VBA και εισαγωγή δηλώσεων VBA

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

Για να εργαστείτε με μακροεντολές στο MS Office 2007-13, εμφανίστε την καρτέλα DEVELOPER στην κορδέλα (κουμπί OFFICE / Word PARAMETERS / RIBBON SETTINGS).

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

Μακροεντολή εγγραφής.

§ Καρτέλα DEVELOPER / RECORD MACRO, δώστε ένα όνομα στη μακροεντολή. Το όνομα δεν πρέπει να περιέχει κενά, να ξεκινά με ένα γράμμα και να μην περιέχει ειδικούς χαρακτήρες. το μέγιστο μήκος ονόματος είναι 80 χαρακτήρες. Εάν η δημιουργημένη μακροεντολή έχει ένα όνομα που ταιριάζει με το όνομα μιας ενσωματωμένης μακροεντολής του Microsoft Word, η υπάρχουσα μακροεντολή αντικαθίσταται από τη νέα.

§ εκτέλεση εντολών

§ Καρτέλα DEVELOPER / STOP RECORD

Συνήθως, η μακροεντολή είναι διαθέσιμη για το πρότυπο Normal.dot, αποθηκεύεται αυτόματα μαζί του.

Εκτέλεση μακροεντολής.

§ Καρτέλα DEVELOPER / MACROS, επιλέξτε την επιθυμητή και EXECUTE.



Αντιστοίχιση μακροεντολής σε ένα κουμπί στη Γραμμή εργαλείων γρήγορης πρόσβασης ή / και μια συντόμευση πληκτρολογίου.

§ ή κουμπί ΓΡΑΦΕΙΟΥ / ΠΑΡΑΜΕΤΡΟΙ Word / ΡΥΘΜΙΣΕΙΣ

§ ή επιλέξτε τις κατάλληλες ενέργειες κατά την εκχώρηση ενός ονόματος στη μακροεντολή.

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

Διαγραφή μακροεντολής.

§ Καρτέλα DEVELOPER / MACROS, επιλέξτε την επιθυμητή και ΔΙΑΓΡΑΦΗ.

Αλλάξτε το κείμενο της μακροεντολής.

Κατά την εγγραφή μιας μακροεντολής, η συσκευή εγγραφής αποθηκεύει μια ακολουθία οδηγιών κειμένου στο VBA. Αυτή η περιγραφή κειμένου ονομάζεται πηγαίος κώδικας. Μπορεί να προβληθεί και να διορθωθεί:

§ Καρτέλα DEVELOPER / MACROS, επιλέξτε την επιθυμητή και ΑΛΛΑΓΗ.

Για να εκτελέσετε μια μακροεντολή από το πρόγραμμα επεξεργασίας VBA: κουμπί RUN ()

Δημιουργία μακροεντολών που εκτελούνται αυτόματα.

Το Word έχει 5 ειδικά ονόματα για μακροεντολές

VBA - τα προγράμματα αποτελούνται από μια απλή ακολουθία ενεργειών: ένα πρόγραμμα αποκτά πρόσβαση σε ένα αντικείμενο, του δίνει ιδιότητες και εκτελεί ενέργειες με αυτό. Κάθε έγγραφο, παράγραφος, ... είναι ένα αντικείμενο. Για παράδειγμα, ένα αντικείμενο επιλογής είναι μια επιλογή. Το ίδιο το Word είναι αντικείμενο εφαρμογής. (Βλ. Παραρτήματα 2,3)



Κάθε αντικείμενο έχει τα δικά του χαρακτηριστικά - ιδιότητες.

Πολλά αντικείμενα εκτελούν ενέργειες που ονομάζονται μέθοδοι.

Για παράδειγμα,

ActiveDocument.Close (αντικείμενο - ενεργό έγγραφο, μέθοδος - κλείσιμο)

Σύμφωνα με τη σύνταξη VBA, το διαχωριστικό είναι τελεία.

Συνήθως: αντικείμενο, σημείο, μέθοδος και / ή ιδιότητες (διαχωρισμένες με τελεία)

Δεξί ποντίκι σε ένα αντικείμενο - λίστα μεθόδων, ιδιοτήτων (Λίστα ιδιοτήτων / μεθόδων)

Η ακολουθία With… .. End With σάς επιτρέπει να καθορίσετε πολλές μεθόδους / ιδιότητες για ένα αντικείμενο χωρίς να επαναλάβετε το όνομά του πολλές φορές.

Πρακτική εργασία 1.

Ας γράψουμε μια μακροεντολή με το όνομα "my_first_macro", στην οποία θα γράψουμε τις ακόλουθες εντολές:

§ Οριζόντιος προσανατολισμός σελίδας

§ Κλίμακα προβολής - 33%

Ως αποτέλεσμα, λαμβάνουμε τον ακόλουθο κωδικό

Υπο my_first_macro ()

"

"Μακροεντολή my_first_macro

"Η μακροεντολή καταγράφηκε στις 03.12.07

Με το ActiveDocument.PageSetup

LineNumbering.Active = Λάθος

Προσανατολισμός = wdOrientLandscape

TopMargin = Εκατοστά Σημεία (1.5)

BottomMargin = Εκατοστά Σημεία (3)

LeftMargin = εκατοστά σημεία (2)

.RightMargin = Εκατοστά Σημεία (2)

Υδρορροή = εκατοστά Σημεία (0)

Απόσταση κεφαλίδας = εκατοστά toPoints (1,25)

FooterDistance = εκατοστόμετρα σημεία (1,25)

PageWidth = Εκατοστά Σημεία (29.7)

PageHeight = Εκατοστά Σημεία (21)

FirstPageTray = wdPrinterDefaultBin

OtherPagesTray = wdPrinterDefaultBin

SectionStart = wdSectionNewPage

OddAndEvenPagesHeaderFooter = Λάθος

DifferentFirstPageHeaderFooter = Λάθος

VerticalAlignment = wdAlignVerticalTop

SuppressEndnotes = Λάθος

MirrorMargins = Λάθος

TwoPagesOnOne = Λάθος

GutterPos = wdGutterPosLeft

ActiveWindow.ActivePane.View.Zoom.Percentage = 33

Τέλος Υποτ

Μπορείτε να διορθώσετε το κείμενο αυτής της μακροεντολής, για παράδειγμα,

§ αλλάξτε το ποσοστό, για παράδειγμα 33 σε 42

§ αλλάξτε τα πεδία

§ αντικαταστήστε False με True in the line.LineNumbering.Active = False (θα υπάρχει αυτόματη αρίθμηση γραμμών)

§ αντικαταστήστε στη γραμμή. Προσανατολισμός = wdOrientLandscapeστο wdOrientPortrait, ο προσανατολισμός χαρτιού θα είναι κατακόρυφος

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

Πρακτική εργασία 2.

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

Το MessageBox είναι ένα πλαίσιο μηνυμάτων που εμφανίζεται στην οθόνη.

Για να εμφανίσετε ένα MessageBox όταν ανοίγετε οποιοδήποτε αρχείο MS Word, πρέπει να δημιουργήσετε μια μακροεντολή με το όνομα AutoOpen και να καλέσετε τη λειτουργία msgbox μέσα σε αυτό. Θα μοιάζει με αυτό:

Sub AutoOpen ()

"Αυτή η λειτουργία καλείται κατά το άνοιγμα ενός εγγράφου

"Εμφάνιση του MessageBox

MsgBox "Γεια σου φίλε μου!"

Ακολουθία ενεργειών (μία από τις επιλογές):

§ Καρτέλα DEVELOPER / MACROS, δώστε οποιοδήποτε όνομα και δημιουργήστε

§ Στο παράθυρο του προγράμματος επεξεργασίας VBA, αλλάξτε το όνομα και εκτυπώστε το κείμενο του προγράμματος στο VBA

§ Σώσει

§ Εκκίνηση

Τώρα, κατά το άνοιγμα κάθε εγγράφου, θα λάβουμε ένα μήνυμα.

Η εντολή για την εμφάνιση του πλαισίου μηνυμάτων μοιάζει με αυτήν:

MsgBox (promt, button, title, helpfile)

Το Promt είναι ένα απαιτούμενο όρισμα που καθορίζει το κείμενο που θα εμφανιστεί στο πλαίσιο μηνύματος

Button - ένα προαιρετικό όρισμα που καθορίζει τον τύπο του πλαισίου μηνυμάτων, την παρουσία των κουμπιών Ok, Cancel, Stop, Skip κ.λπ.

Τίτλος - ένα προαιρετικό όρισμα που καθορίζει τον τίτλο του παραθύρου

· Helpfile - ένα προαιρετικό όρισμα που καθορίζει ποιο αρχείο βοήθειας θα ανοίξει εάν ο χρήστης πατήσει το F1

Πρακτική εργασία 3.

Δημιουργία ενός απλού πλαισίου διαλόγου.

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

Δημιουργία φόρμας:

§ Παράθυρο VBA (ALT + F11)

ΕΙΣΑΓΩΓΗ / Νέα φόρμα ή UserForm (εισαγωγή νέας φόρμας)

§ Στο παράθυρο Ιδιότητες, μπορείτε να διαμορφώσετε τις ιδιότητες της φόρμας, για παράδειγμα, η ιδιότητα Λεζάντα σάς επιτρέπει να δώσετε ένα όνομα στη φόρμα

§ Χρησιμοποιώντας τον πίνακα εργαλείων, ορίστε τα στοιχεία ελέγχου στη φόρμα:

· Ετικέτα - επιγραφή

CommandButton - ένα κουμπί εντολής για την εκτέλεση μιας ενέργειας

Πεδίο κειμένου-κειμένου

Εικόνα - σχέδιο

ChtckBox - πλαίσιο ελέγχου

§ Προσαρμόζουμε την εργασία κάθε στοιχείου. Για παράδειγμα, 2 κλικ στο CommandButton θα σας επιτρέψουν να γράψετε αυτές τις δηλώσεις VBA που θα πρέπει να εκτελεστούν όταν πατηθεί αυτό το κουμπί.

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

Φόρτωση UserForm1

UserForm 1. Εμφάνιση

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


Συνέχιση του θέματος:
Δρομολογητές

Τα τυποποιημένα gadgets έχουν αφαιρεθεί χωρίς όρους από τις σύγχρονες εκδόσεις των Windows OC. Όμως οι χρήστες δεν έχουν συνηθίσει να χάνουν κάτι καλό και επομένως χρησιμοποιούν ενεργά ανάλογα. Πολύ πριν ...

Νέα άρθρα
/
Δημοφιλής