Přidat modul do knihovny Excel VBA v Javě

Tento článek popisuje, jak přidat modul do Excel knihovny VBA v Javě. Obsahuje podrobnosti pro nastavení vývojového prostředí, seznam programovacích úloh a ukázkový kód, který demonstruje přidání modulu do Knihovny kódu VBA v Javě. Naučíte se také nastavit různé vlastnosti modulu, jako je kód VBA, který ukazuje vývoj makra pro soubor aplikace Excel.

Kroky k úpravě knihovny kódů Excel VBA v Javě

  1. Nastavte IDE tak, aby pro práci s VBA používalo Aspose.Cells for Java
  2. Vytvořte instanci objektu Workbook, otevřete sheet a přidejte modul pro vybraný list
  3. Otevřete nový modul ze sešitu a nastavte jeho název
  4. Napište a otestujte kód VBA a použijte jej jako vlastnost codes v modulu
  5. Uložte výstupní soubor aplikace Excel jako XLSM na disk nebo v případě potřeby stream

Tyto kroky shrnují proces přidávání do Knihovny zdrojového kódu Excel VBA v Javě. Proces je jednoduchý, protože k přidání nového modulu VbaModule vyžaduje list ze sešitu a poté v něm nastavit několik vlastností. Nastavte vlastnost Kódy pomocí víceřádkového kódu VBA, aby bylo makro funkční.

Kód pro přidání kódu do knihovny maker Excel v Javě

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");
}
}

Tento fragment kódu ukazuje, jak přistupovat ke knihovně kódu VBA v Javě a jak přidat modul s kódem. V tomto ukázkovém kódu jsme nastavili název a kód, který mění barvu buněk podle rozsahu hodnot definovaných v kódu VBA. Modul můžete přidat pomocí jiné přetížené metody, která přebírá hodnotu enumerátoru VbaModuleType jako argument, který zahrnuje CLASS, DESIGNER, DOCUMENT a PROCEDURAL.

Tento článek nás naučil vytvořit nové makro v souboru aplikace Excel. Chcete-li použít podmíněné formátování v aplikaci Excel, přečtěte si článek o Použijte podmíněné formátování v Excelu pomocí Java.

 Čeština