Modification du code VBA ou macro à l'aide de Aspose.Cells
Contents
[
Hide
]
Vous pouvez modifier VBA ou Macro Code en utilisant Aspose.Cells. Aspose.Cells a ajouté les classes suivantes pour lire et modifier le projet VBA dans le fichier Excel.
- Projet Vba
- VbaModuleCollectionVbaModuleCollection
- Module Vba
Cet article vous montrera comment modifier le code VBA ou macro dans le fichier Excel source à l’aide de Aspose.Cells.
Exemple
L’exemple de code suivant charge le fichier Excel source qui contient un code VBA ou Macro suivant à l’intérieur
Sub Button1_Click()
MsgBox "This is test message."
End Sub
Après l’exécution de l’exemple de code Aspose.Cells, le code VBA ou Macro sera modifié comme ceci
Sub Button1_Click()
MsgBox "This is Aspose.Cells message."
End Sub
Vous pouvez télécharger lefichier Excel source et lefichier Excel de sortie à partir des liens donnés.
This file contains 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 | |
String dataDir = Utils.getDataDir(ModifyVBAorMacroCode.class); | |
// Create workbook object from source Excel file | |
Workbook workbook = new Workbook(dataDir + "sample.xlsm"); | |
// Change the VBA Module Code | |
VbaModuleCollection modules = workbook.getVbaProject().getModules(); | |
for (int i = 0; i < modules.getCount(); i++) { | |
VbaModule module = modules.get(i); | |
String code = module.getCodes(); | |
// Replace the original message with the modified message | |
if (code.contains("This is test message.")) { | |
code = code.replace("This is test message.", "This is Aspose.Cells message."); | |
module.setCodes(code); | |
} | |
} | |
// Save the output Excel file | |
workbook.save(dataDir + "output.xlsm"); |