Τι είναι οι πίνακες ελέγχου και οι αναφορές στο Excel;
Στο Excel, είναι κρίσιμο να κατανοήσουμε τη διαφορά μεταξύ αναφορών και πινάκων εργαλείων για την αποτελεσματική ανάλυση και οπτικοποίηση δεδομένων.
Αν και το VBA προσφέρει μια αξιοπρεπή ποικιλία από ενσωματωμένες λειτουργίες, μπορεί να μην βρίσκετε πάντα αυτό ακριβώς που χρειάζεστε. Ευτυχώς, μπορείτε επίσης να χρησιμοποιήσετε τις περισσότερες από τις συναρτήσεις φύλλου εργασίας του Excel στις διαδικασίες VBA σας. Οι μόνες συναρτήσεις φύλλου εργασίας που δεν μπορείτε να χρησιμοποιήσετε είναι αυτές που έχουν αντίστοιχη συνάρτηση VBA. Για παράδειγμα, δεν μπορείτε να χρησιμοποιήσετε τη συνάρτηση RAND του Excel (η οποία δημιουργεί έναν τυχαίο αριθμό), επειδή το VBA έχει μια ισοδύναμη συνάρτηση: Rnd.
Η VBA καθιστά διαθέσιμες τις συναρτήσεις φύλλου εργασίας του Excel μέσω του αντικειμένου WorksheetFunction, το οποίο περιέχεται στο αντικείμενο Application. Ακολουθεί ένα παράδειγμα για το πώς μπορείτε να χρησιμοποιήσετε τη συνάρτηση SUM του Excel σε μια δήλωση VBA:
Σύνολο = Application.WorksheetFunction.SUM(Range(“A1:A12”))
Μπορείτε να παραλείψετε είτε το τμήμα Εφαρμογή είτε το τμήμα Συνάρτηση φύλλου εργασίας της έκφρασης. Και στις δύο περιπτώσεις, το VBA καταλαβαίνει τι κάνετε. Με άλλα λόγια, αυτές οι τρεις εκφράσεις λειτουργούν ακριβώς το ίδιο:
Σύνολο = Application.WorksheetFunction.SUM(Range(“A1:A12”)) Σύνολο = WorksheetFunction.SUM(Range(“A1:A12”)) Σύνολο = Application.SUM(Εύρος ("A1:A12"))
Η προσωπική μου προτίμηση είναι να χρησιμοποιήσω το τμήμα WorksheetFunction απλώς για να είναι απολύτως σαφές ότι ο κώδικας χρησιμοποιεί μια συνάρτηση Excel.
Εδώ, θα ανακαλύψετε πώς να χρησιμοποιήσετε τις συναρτήσεις φύλλου εργασίας στις εκφράσεις VBA σας.
Εύρεση της μέγιστης τιμής σε ένα εύρος
Ακολουθεί ένα παράδειγμα που δείχνει πώς να χρησιμοποιήσετε τη συνάρτηση φύλλου εργασίας MAX του Excel σε μια διαδικασία VBA. Αυτή η διαδικασία εμφανίζει τη μέγιστη τιμή στη στήλη Α του ενεργού φύλλου εργασίας:
Χρήση συνάρτησης φύλλου εργασίας στον κώδικα VBA.
Sub ShowMax() Dim TheMax As Double TheMax = WorksheetFunction.MAX(Range("A:A")) MsgBox TheMax End Sub
Μπορείτε να χρησιμοποιήσετε τη συνάρτηση MIN για να λάβετε τη μικρότερη τιμή σε ένα εύρος. Και όπως θα περίμενε κανείς, μπορείτε να χρησιμοποιήσετε άλλες συναρτήσεις φύλλου εργασίας με παρόμοιο τρόπο. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε τη συνάρτηση LARGE για να προσδιορίσετε την κ η μεγαλύτερη τιμή σε ένα εύρος. Η ακόλουθη έκφραση το αποδεικνύει:
SecondHighest = WorksheetFunction.LARGE(Range("A:A"),2)
Σημειώστε ότι η συνάρτηση LARGE χρησιμοποιεί δύο ορίσματα. Το δεύτερο όρισμα αντιπροσωπεύει το k ο μέρος — 2, σε αυτήν την περίπτωση (τη δεύτερη μεγαλύτερη τιμή).
Υπολογισμός πληρωμής στεγαστικού δανείου
Το επόμενο παράδειγμα χρησιμοποιεί τη συνάρτηση φύλλου εργασίας PMT για τον υπολογισμό μιας πληρωμής στεγαστικού δανείου. Τρεις μεταβλητές χρησιμοποιούνται για την αποθήκευση των δεδομένων που μεταβιβάζονται στη συνάρτηση Pmt ως ορίσματα. Ένα πλαίσιο μηνύματος εμφανίζει την υπολογισμένη πληρωμή.
Sub PmtCalc() Dim IntRate As Double Dim LoanAmt As Double Αχνές περίοδοι όσο καιρό IntRate = 0,0625 / 12 Περίοδοι = 30 * 12 LoanAmt = 150000 MsgBox WorksheetFunction.PMT(IntRate, Periods, -LoanAmt) End Sub
Όπως δείχνει η ακόλουθη δήλωση, μπορείτε επίσης να εισαγάγετε τις τιμές απευθείας ως ορίσματα συνάρτησης:
MsgBox WorksheetFunction.PMT(0.0625 /12, 360, -150000)
Ωστόσο, η χρήση μεταβλητών για την αποθήκευση των παραμέτρων διευκολύνει την ανάγνωση και την τροποποίηση του κώδικα, εάν είναι απαραίτητο.
Χρήση συνάρτησης αναζήτησης
Το παρακάτω παράδειγμα χρησιμοποιεί τις συναρτήσεις InputBox και MsgBox της VBA, καθώς και τη συνάρτηση VLOOKUP του Excel. Ζητάει έναν αριθμό ανταλλακτικού και, στη συνέχεια, λαμβάνει την τιμή από έναν πίνακα αναζήτησης. Παρακάτω, το εύρος A1:B13 ονομάζεται Τιμοκατάλογος.
Η σειρά, που ονομάζεται PriceList, περιέχει τιμές για ανταλλακτικά.
Sub GetPrice() Dim PartNum As Variant Dim Price As Double PartNum = InputBox ("Εισαγάγετε τον αριθμό εξαρτήματος") Φύλλα ("Τιμές"). Ενεργοποίηση Τιμή = WorksheetFunction.VLOOKUP(PartNum, Range("PriceList"), 2, False) MsgBox PartNum & “cost” & Price End Sub
Δείτε πώς λειτουργεί η διαδικασία GetPrice:
Η συνάρτηση InputBox του VBA ζητά από τον χρήστη έναν αριθμό ανταλλακτικού.
Ο αριθμός εξαρτήματος που εισάγει ο χρήστης εκχωρείται στη μεταβλητή PartNum.
Η επόμενη δήλωση ενεργοποιεί το φύλλο εργασίας Τιμές, σε περίπτωση που δεν είναι ήδη το ενεργό φύλλο.
Ο κωδικός χρησιμοποιεί τη συνάρτηση VLOOKUP για να βρει τον αριθμό εξαρτήματος στον πίνακα.
Σημειώστε ότι τα ορίσματα που χρησιμοποιείτε σε αυτήν τη δήλωση είναι τα ίδια με αυτά που θα χρησιμοποιούσατε με τη συνάρτηση σε έναν τύπο φύλλου εργασίας. Αυτή η δήλωση εκχωρεί το αποτέλεσμα της συνάρτησης στη μεταβλητή Price.
Ο κωδικός εμφανίζει την τιμή του εξαρτήματος μέσω της συνάρτησης MsgBox.
Αυτή η διαδικασία δεν έχει κανέναν χειρισμό σφαλμάτων και αποτυγχάνει παταγωδώς εάν εισαγάγετε έναν ανύπαρκτο αριθμό εξαρτήματος. (Δοκιμάστε το.) Εάν αυτή ήταν μια πραγματική εφαρμογή που χρησιμοποιείται σε μια πραγματική επιχείρηση, θα θέλατε να προσθέσετε μερικές δηλώσεις που αντιμετωπίζουν τα σφάλματα με μεγαλύτερη χάρη.
Δεν μπορείτε να χρησιμοποιήσετε το πλαίσιο διαλόγου Συνάρτηση Επικόλλησης του Excel για να εισαγάγετε μια συνάρτηση φύλλου εργασίας σε μια λειτουργική μονάδα VBA. Αντίθετα, εισάγετε τέτοιες λειτουργίες με τον παλιομοδίτικο τρόπο: με το χέρι. Ωστόσο, μπορείτε να χρησιμοποιήσετε το πλαίσιο διαλόγου Επικόλληση συνάρτησης για να προσδιορίσετε τη συνάρτηση που θέλετε να χρησιμοποιήσετε και να μάθετε για τα ορίσματά της.
Μπορείτε επίσης να επωφεληθείτε από την επιλογή Auto List Members του VBE, η οποία εμφανίζει μια αναπτυσσόμενη λίστα με όλες τις λειτουργίες του φύλλου εργασίας. Απλώς πληκτρολογήστε Application.WorksheetFunction , ακολουθούμενο από μια τελεία. Στη συνέχεια, βλέπετε μια λίστα με τις λειτουργίες που μπορείτε να χρησιμοποιήσετε. Εάν αυτή η δυνατότητα δεν λειτουργεί, επιλέξτε την εντολή Εργαλεία → Επιλογές του VBE, κάντε κλικ στην καρτέλα Επεξεργαστής και τοποθετήστε μια επιλογή δίπλα στην επιλογή Αυτόματη λίστα μελών.
Λήψη λίστας συναρτήσεων φύλλου εργασίας που μπορείτε να χρησιμοποιήσετε στον κώδικα VBA.
Οι νεοεισερχόμενοι στο VBA συχνά συγχέουν τις ενσωματωμένες λειτουργίες του VBA και τις λειτουργίες του βιβλίου εργασίας του Excel. Ένας καλός κανόνας που πρέπει να θυμάστε είναι ότι η VBA δεν προσπαθεί να επανεφεύρει τον τροχό. Ως επί το πλείστον, το VBA δεν αντιγράφει συναρτήσεις φύλλου εργασίας του Excel.
Για τις περισσότερες συναρτήσεις φύλλου εργασίας που δεν είναι διαθέσιμες ως μέθοδοι του αντικειμένου WorksheetFunction, μπορείτε να χρησιμοποιήσετε έναν αντίστοιχο ενσωματωμένο τελεστή ή συνάρτηση VBA. Για παράδειγμα, η συνάρτηση φύλλου εργασίας MOD δεν είναι διαθέσιμη στο αντικείμενο WorksheetFunction επειδή το VBA έχει ένα ισοδύναμο: τον ενσωματωμένο τελεστή Mod.
Συμπέρασμα? Εάν πρέπει να χρησιμοποιήσετε μια συνάρτηση, προσδιορίστε πρώτα εάν το VBA έχει κάτι που καλύπτει τις ανάγκες σας. Εάν όχι, ελέγξτε τις λειτουργίες του φύλλου εργασίας. Εάν όλα τα άλλα αποτύχουν, ίσως μπορείτε να γράψετε μια προσαρμοσμένη συνάρτηση χρησιμοποιώντας το VBA.
Στο Excel, είναι κρίσιμο να κατανοήσουμε τη διαφορά μεταξύ αναφορών και πινάκων εργαλείων για την αποτελεσματική ανάλυση και οπτικοποίηση δεδομένων.
Ανακαλύψτε πότε να χρησιμοποιήσετε το OneDrive για επιχειρήσεις και πώς μπορείτε να επωφεληθείτε από τον αποθηκευτικό χώρο των 1 TB.
Ο υπολογισμός του αριθμού ημερών μεταξύ δύο ημερομηνιών είναι κρίσιμος στον επιχειρηματικό κόσμο. Μάθετε πώς να χρησιμοποιείτε τις συναρτήσεις DATEDIF και NETWORKDAYS στο Excel για ακριβείς υπολογισμούς.
Ανακαλύψτε πώς να ανανεώσετε γρήγορα τα δεδομένα του συγκεντρωτικού πίνακα στο Excel με τέσσερις αποτελεσματικές μεθόδους.
Μάθετε πώς μπορείτε να χρησιμοποιήσετε μια μακροεντολή Excel για να αποκρύψετε όλα τα ανενεργά φύλλα εργασίας, βελτιώνοντας την οργάνωση του βιβλίου εργασίας σας.
Ανακαλύψτε τις Ιδιότητες πεδίου MS Access για να μειώσετε τα λάθη κατά την εισαγωγή δεδομένων και να διασφαλίσετε την ακριβή καταχώρηση πληροφοριών.
Ανακαλύψτε πώς να χρησιμοποιήσετε το εργαλείο αυτόματης σύνοψης στο Word 2003 για να συνοψίσετε εγγραφές γρήγορα και αποτελεσματικά.
Η συνάρτηση PROB στο Excel επιτρέπει στους χρήστες να υπολογίζουν πιθανότητες με βάση δεδομένα και πιθανότητες σχέσης, ιδανική για στατιστική ανάλυση.
Ανακαλύψτε τι σημαίνουν τα μηνύματα σφάλματος του Solver στο Excel και πώς να τα επιλύσετε, βελτιστοποιώντας τις εργασίες σας αποτελεσματικά.
Η συνάρτηση FREQUENCY στο Excel μετράει τις τιμές σε έναν πίνακα που εμπίπτουν σε ένα εύρος ή bin. Μάθετε πώς να την χρησιμοποιείτε για την κατανομή συχνότητας.