ترشدك هذه المقالة إلى كيفية إضافة وحدة نمطية في مكتبة 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 متعدد الأسطر لتشغيل الماكرو.
رمز لإضافة التعليمات البرمجية في مكتبة ماكرو 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.