Module toevoegen aan Excel VBA-bibliotheek in Java

In dit artikel wordt uitgelegd hoe u module toevoegt aan de Excel VBA-bibliotheek in Java. Het bevat de details voor het instellen van de ontwikkelomgeving, een lijst met programmeertaken en een voorbeeldcode die de toevoeging van een module aan de VBA-codebibliotheek in Java demonstreert. Ook leer je verschillende module-eigenschappen instellen, zoals de VBA-code die de ontwikkeling van een macro voor een Excel-bestand vertoont.

Stappen om de Excel VBA-codebibliotheek in Java te wijzigen

  1. Stel de IDE in om Aspose.Cells for Java te gebruiken om met VBA te werken
  2. Instantieer een Workbook-object, open een sheet en voeg een module toe voor het geselecteerde blad
  3. Open de nieuwe module vanuit de werkmap en stel de naam in
  4. Schrijf en test een VBA-code en gebruik deze als de code-eigenschap in de module
  5. Sla het Excel-uitvoerbestand op als XLSM op de schijf of stream indien nodig

Deze stappen vatten het proces samen van het maken van toevoegingen aan de Excel VBA-broncodebibliotheek in Java. Het proces is eenvoudig omdat er een werkblad uit een werkmap voor nodig is om een nieuwe VbaModule toe te voegen en er vervolgens een paar eigenschappen in in te stellen. Stel de eigenschap Codes in met VBA-code met meerdere regels om de macro operationeel te maken.

Code om code toe te voegen aan de Excel-macrobibliotheek in 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");
}
}

Dit codefragment laat zien hoe u toegang krijgt tot de VBA-codebibliotheek in Java en een module met code erin kunt toevoegen. In deze voorbeeldcode hebben we de naam en code ingesteld waarmee de kleur van cellen wordt gewijzigd op basis van het waardenbereik dat is gedefinieerd in de VBA-code. U kunt een module toevoegen met behulp van een andere overbelaste methode die de VbaModuleType-enumeratorwaarde als argument gebruikt, waaronder CLASS, DESIGNER, DOCUMENT en PROCEDURAL.

Dit artikel heeft ons geleerd een nieuwe macro in een Excel-bestand te maken. Raadpleeg het artikel op Pas voorwaardelijke opmaak toe in Excel met behulp van Java om voorwaardelijke opmaak toe te passen in Excel.

 Nederlands