Εργασίες για προγραμματισμό στο Excel VBA - Εύκολες μακροεντολές Excel

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

Παρακάτω θα δούμε ένα πρόγραμμα στο Excel VBA που καθορίζει το χρώμα φόντου του εργασίες που έχουν προγραμματιστεί σε πράσινο και ορίζει το χρώμα φόντου των εργασιών που είναι πίσω από το χρονοδιάγραμμα σε κόκκινο.

Κατάσταση:

Στο Sheet1 έχουμε τρεις εργασίες (X, Y, Z). Ένα "1" υποδεικνύει ότι μια εργασία έχει ολοκληρωθεί. Μια εργασία είναι προγραμματισμένη εάν υπάρχει "1" σε κάθε στήλη μέχρι και τη σημερινή ημερομηνία. Σήμερα είναι 6 Ιουνίου. Οι εργασίες X και Y είναι προγραμματισμένες. Η εργασία Z είναι πίσω από το χρονοδιάγραμμα (όχι "1" στο κελί E8).

Δημιουργία συμβάντος αλλαγής φύλλου εργασίας. Ο κώδικας που προστέθηκε στο συμβάν αλλαγής φύλλου εργασίας θα εκτελεστεί από το Excel VBA όταν αλλάξετε ένα κελί σε ένα φύλλο εργασίας.

1. Ανοίξτε το Visual Basic Editor.

2. Κάντε διπλό κλικ στο Sheet1 (Sheet1) στο Project Explorer.

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

Προσθέστε τις ακόλουθες γραμμές κώδικα στο συμβάν αλλαγής φύλλου εργασίας:

4. Δηλώστε δύο μεταβλητές τύπου Ακέραιος.

Dim i Ως ακέραιος, j Ως ακέραιος

5. Προσθέστε ένα βρόχο Do while.

Do while Cells (6 + i, 1). Αξία ""
i = i + 1
Βρόχος

Επεξήγηση: Για i = 0, το Excel VBA ελέγχει την εργασία X, για i = 1, την εργασία Y, κ.λπ. Το Excel VBA αφήνει τον βρόχο Do while όταν τα κελιά (6 + i, 1). Η τιμή είναι κενή (δεν υπάρχουν άλλες εργασίες για έλεγχο) .

Προσθέστε τις ακόλουθες γραμμές κώδικα (στα 6, 7 και 8) στο βρόχο Do while.

6. Αρχικοποιήστε τη μεταβλητή j με τιμή 0.

j = 0

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

Κελιά (6 + i, 1). Εσωτερικό. ColorIndex = 4

8. Προσθέστε ένα άλλο Do while Loop.

Do while Cells (4, 2 + j). Αξία <= Ημερομηνία
Εάν κελιά (6 + i, 2 + j). Τιμή = 0 Στη συνέχεια κελιά (6 + i, 1). Εσωτερικό. ColorIndex = 3
j = j + 1
Βρόχος

Σημείωση: η συνάρτηση Ημερομηνία επιστρέφει τη σημερινή ημερομηνία.

Επεξήγηση: Για i = 0, j = 0, το Excel VBA ελέγχει το κελί B6. Για i = 0, j = 1, το Excel VBA ελέγχει το κελί C6, κλπ. Μια εργασία είναι προγραμματισμένη εάν υπάρχει "1" σε κάθε στήλη μέχρι και τη σημερινή ημερομηνία. Εάν το Excel VBA εντοπίσει ένα "0", ορίζει το χρώμα φόντου της εργασίας σε κόκκινο.

9. Δοκιμάστε το πρόγραμμα. Για παράδειγμα, υποδείξτε ότι η εργασία Z στις 6-Ιουνίου έχει ολοκληρωθεί. Ως αποτέλεσμα, η εργασία Z θα γίνει αυτόματα πράσινη.

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

wave wave wave wave wave