Makrocode einer Steuerelementform zuweisen
Contents
[
Hide
]
Aspose.Cells erlaubt die Zuordnung eines Makro-Codes zu einem Formularsteuerungselement wie einem Button. Verwenden Sie die Methode ShapeCollection.addShape() um einen neuen Makro-Code einem Formularsteuerungselement im Arbeitsbuch zuzuordnen.
Makrocode einer Steuerelementform zuweisen mit Aspose.Cells
Der folgende Beispielcode erstellt eine neue Arbeitsmappe, weist einem Steuerelement wie einer Schaltfläche Makrocode zu und speichert die Ausgabe im XLSM-Format. Wenn Sie die Ausgabedatei XLSM in Microsoft Excel öffnen, werden Sie den folgenden Makrocode sehen.
Sub ShowMessage()
MsgBox "Welcome to Aspose!"
End Sub
Hier ist ein Beispielcode, um die Ausgabedatei XLSM mit Makrocode zu generieren.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(AssignMacroToFormControl.class); | |
Workbook workbook = new Workbook(); | |
Worksheet sheet = workbook.getWorksheets().get(0); | |
int moduleIdx = workbook.getVbaProject().getModules().add(sheet); | |
VbaModule module = workbook.getVbaProject().getModules().get(moduleIdx); | |
module.setCodes("Sub ShowMessage()" + "\r\n" + | |
" MsgBox \"Welcome to Aspose!\"" + "\r\n" + | |
"End Sub"); | |
Button button = (Button) sheet.getShapes().addShape(MsoDrawingType.BUTTON, 2, 0, 2, 0, 28, 80); | |
button.setPlacement(PlacementType.FREE_FLOATING); | |
button.getFont().setName("Tahoma"); | |
button.getFont().setBold(true); | |
button.getFont().setColor(Color.getBlue()); | |
button.setText("Aspose"); | |
button.setMacroName(sheet.getName() + ".ShowMessage"); | |
workbook.save(dataDir + "Output.xlsm"); | |
System.out.println("File saved"); |