Αυτό το άρθρο καθοδηγεί τον τρόπο προσθήκης λειτουργικής μονάδας στη βιβλιοθήκη Excel VBA σε Java. Διαθέτει τις λεπτομέρειες για να ορίσετε το περιβάλλον ανάπτυξης, μια λίστα εργασιών προγραμματισμού και ένα δείγμα κώδικα που δείχνει την προσθήκη μιας ενότητας στη βιβλιοθήκη κώδικα VBA σε Java. Θα μάθετε επίσης να ορίζετε διάφορες ιδιότητες λειτουργικής μονάδας, όπως ο κώδικας VBA που εμφανίζει την ανάπτυξη μιας μακροεντολής για ένα αρχείο Excel.
Βήματα για την τροποποίηση της βιβλιοθήκης κώδικα Excel VBA σε Java
- Ρυθμίστε το IDE ώστε να χρησιμοποιεί το Aspose.Cells for Java για εργασία με VBA
- Δημιουργήστε ένα αντικείμενο Workbook, αποκτήστε πρόσβαση σε ένα sheet και προσθέστε μια λειτουργική μονάδα για το επιλεγμένο φύλλο
- Αποκτήστε πρόσβαση στη νέα μονάδα από το βιβλίο εργασίας και ορίστε το όνομά της
- Γράψτε και δοκιμάστε έναν κώδικα VBA και χρησιμοποιήστε τον ως την ιδιότητα κωδικών στη λειτουργική μονάδα
- Αποθηκεύστε το αρχείο εξόδου Excel ως XLSM στο δίσκο ή σε ροή, εάν απαιτείται
Αυτά τα βήματα συνοψίζουν τη διαδικασία δημιουργίας προσθηκών στη βιβλιοθήκη πηγαίου κώδικα Excel VBA σε Java. Η διαδικασία είναι απλή καθώς απαιτεί ένα φύλλο εργασίας από ένα βιβλίο εργασίας για να προσθέσετε ένα νέο VbaModule και στη συνέχεια να ορίσετε μερικές ιδιότητες σε αυτό. Ορίστε την ιδιότητα Κωδικοί με κωδικό VBA πολλαπλών γραμμών για να κάνετε τη μακροεντολή λειτουργική.
Κώδικας για προσθήκη κώδικα στη Βιβλιοθήκη Macro Excel σε Java
import com.aspose.cells.*; | |
public class Main | |
{ | |
public static void main(String[] args) throws Exception // Add VBA Code in Java | |
{ | |
// Set the licenses | |
new License().setLicense("License.lic"); | |
// Create a workbook | |
Workbook wb = new Workbook(); | |
// Select a sheet | |
Worksheet ws = wb.getWorksheets().get(0); | |
// Add VBA Module and get its reference | |
int idx = wb.getVbaProject().getModules().add(ws); | |
VbaModule module = wb.getVbaProject().getModules().get(idx); | |
// Assign a name to the module | |
module.setName("SetGreenEven"); | |
// Set code for the module | |
module.setCodes(""" | |
Private Sub Worksheet_Change(ByVal Target As Range) | |
' Verify if updated cell is within a specified range | |
If Not Intersect(Target, Range("A1:Z100")) Is Nothing Then | |
' Loop through all cells | |
For Each Cell In Target | |
' Check the cell value and apply formatting accordingly | |
If Cell.Value >= 80 Then | |
Cell.Interior.Color = RGB(0, 255, 0) ' Green | |
ElseIf Cell.Value >= 50 And Cell.Value < 80 Then | |
Cell.Interior.Color = RGB(255, 165, 0) ' Orange | |
ElseIf Cell.Value < 50 Then | |
Cell.Interior.Color = RGB(152, 133, 88) ' Dark Tan | |
Else | |
' Reset the background color if none of the conditions are met | |
Cell.Interior.ColorIndex = xlNone | |
End If | |
Next Cell | |
End If | |
End Sub | |
"""); | |
// Save the output | |
wb.save("sampleWithMacro.xlsm", SaveFormat.XLSM); | |
System.out.println("Done"); | |
} | |
} |
Αυτό το απόσπασμα κώδικα δείχνει πώς μπορείτε να πρόσβαση στη βιβλιοθήκη κώδικα VBA σε Java και να προσθέσετε μια λειτουργική μονάδα με κώδικα σε αυτήν. Σε αυτό το δείγμα κώδικα, έχουμε ορίσει το όνομα και τον κωδικό που αλλάζει το χρώμα των κελιών σύμφωνα με το εύρος τιμών που ορίζεται στον κώδικα VBA. Μπορείτε να προσθέσετε μια λειτουργική μονάδα χρησιμοποιώντας μια άλλη υπερφορτωμένη μέθοδο που λαμβάνει την τιμή του απαριθμητή VbaModuleType ως όρισμα που περιλαμβάνει CLASS, DESIGNER, DOCUMENT και PROCEDURAL.
Αυτό το άρθρο μας δίδαξε να δημιουργήσουμε μια νέα μακροεντολή σε ένα αρχείο Excel. Για να εφαρμόσετε μορφοποίηση υπό όρους στο Excel, ανατρέξτε στο άρθρο στο Εφαρμόστε μορφοποίηση υπό όρους στο Excel χρησιμοποιώντας Java.