VBA Array of Objects

Πίνακας περιεχομένων

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

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

Δήλωση του πίνακα αντικειμένων

Σε αυτό το παράδειγμα, θα δηλώσουμε μια σειρά από φύλλα εργασίας VBA:

1 Dim arWks (3) Ως φύλλο εργασίας

Συμπλήρωση ενός πίνακα στατικών αντικειμένων

Δηλώστε τον πίνακα αντικειμένων ως στατικό και, στη συνέχεια, μπορείτε να συμπληρώσετε τον πίνακα με τα φύλλα που επιλέγετε από το βιβλίο εργασίας σας.

12345678 Sub TestObjArray ()'ορίστε τον πίνακα ως πίνακα φύλλου εργασίαςDim arWks (1 έως 3) Ως φύλλο εργασίας"προσθέστε 3 φύλλα στον πίνακασύνολο arWks (1) = Φύλλα (1)σύνολο arWks (2) = Φύλλα (2)Ορισμός arWks (3) = Φύλλα (3)Τέλος υπο

Συμπλήρωση συστοιχίας δυναμικού αντικειμένου

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

1234567891011121314 Sub TestObjArray ()'ορίστε τον πίνακα ως πίνακα φύλλου εργασίαςDim arWks () Ως φύλλο εργασίας«μετρήστε πόσα φύλλα εργασίας στο αρχείο και ξαναστασιάστε τον πίνακαDim n ως ακέραιοςDim i As Integer«μετρήστε τα φύλλα και μείον ένα για να ορίσετε τα όρια για τον πίνακαn = Application.Sheets.Count - 1ReDim arWks (n)"συμπληρώστε τη συστοιχία φύλλου εργασίας με όλα τα φύλλα στο βιβλίο εργασίαςΓια i = LBound (arWks) έως UBound (arWks)Ορισμός arWks (i) = ActiveWorkbook. Φύλλα (i + 1)Επόμενο iΤέλος υπο

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

Χρήση του πίνακα αντικειμένων στον κώδικα VBA

Αφού συμπληρώσουμε τη συστοιχία φύλλου εργασίας, μπορούμε να χρησιμοποιήσουμε το VBA για να βροχήσουμε τον πίνακα.

123456789101112131415161718 Sub TestObjArray ()'ορίστε τον πίνακα ως πίνακα φύλλου εργασίαςDim arWks () Ως φύλλο εργασίας«μετρήστε πόσα φύλλα εργασίας στο αρχείο και ξαναστασιάστε τον πίνακαDim n ως ακέραιοςDim i As Integer«μετρήστε τα φύλλα και μείον ένα για να ορίσετε τα όρια για τον πίνακαn = Application.Sheets.Count - 1ReDim arWks (n)"συμπληρώστε τη συστοιχία φύλλου εργασίας με όλα τα φύλλα στο βιβλίο εργασίαςΓια i = LBound (arWks) έως UBound (arWks)Ορισμός arWks (i) = ActiveWorkbook. Φύλλα (i + 1)Επόμενο i«κάντε κάτι σε κάθε φύλλο του πίνακαΓια i = LBound (arWks) έως UBound (arWks)arWks (i) .Range ("A1: H1"). Font.Bold = TrueΕπόμενο iΤέλος υπο

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

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave