VBA est un langage de programmation utilisé pour automatiser diverses opérations dans les fichiers MS Excel. En particulier, les macros VBA sont des codes définis par l’utilisateur qui vous permettent d’accélérer les tâches de manipulation de la feuille de calcul. Dans cet article, vous apprendrez à utiliser des macros VBA dans des fichiers Excel par programmation. En fin de compte, vous pourrez ajouter et modifier des macros VBA dans Excel à l’aide de Java.
- Travailler avec des macros VBA à l’aide de l’API Java
- Ajouter des macros VBA à un classeur Excel
- Modifier la macro VBA dans un classeur Excel
Travailler avec les macros Excel VBA à l’aide de l’API Java
Afin de travailler avec des macros VBA dans des fichiers Excel, nous utiliserons Aspose.Cells for Java. Il s’agit d’une puissante API d’automatisation de feuille de calcul qui vous permet de créer, de modifier et de convertir des fichiers Excel. De plus, il simplifie la manipulation des macros VBA. Vous pouvez soit télécharger l’API ou l’installer à l’aide des configurations Maven suivantes.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.5</version>
</dependency>
Ajouter des macros VBA à un classeur Excel en Java
Voici les étapes pour ajouter une macro VBA dans les fichiers Excel en Java.
- Tout d’abord, chargez un classeur existant ou créez-en un nouveau à l’aide de la classe Workbook.
- Récupérez la feuille de calcul dans un objet Worksheet à l’aide de la méthode Workbook.getWorksheets().get(index).
- Ajoutez un nouveau module VBA à l’aide de la méthode Workbook.getVbaProject().getModules().add(Worksheet).
- Obtenez la référence du module nouvellement ajouté dans l’objet VbaModule.
- Définissez le nom et le code du module à l’aide des méthodes VbaModule.setName() et VbaModule.setCodes(), respectivement.
- Enfin, enregistrez le classeur à l’aide de la méthode Workbook.save(string, SaveFormat.XLSM).
L’exemple de code suivant montre comment ajouter une macro VBA dans un fichier Excel à l’aide de Java.
// Pour des exemples complets et des fichiers de données, rendez-vous sur https://github.com/aspose-cells/Aspose.Cells-for-Java
// Charger le classeur Excel
Workbook workbook = new Workbook("workbook.xlsm");
// Accéder à la première feuille de calcul
Worksheet worksheet = workbook.getWorksheets().get(0);
// Ajouter un module VBA
int idx = workbook.getVbaProject().getModules().add(worksheet);
// Accédez au module VBA, définissez son nom et ses codes
VbaModule module = workbook.getVbaProject().getModules().get(idx);
module.setName("TestModule");
module.setCodes("Sub ShowMessage()" + "\r\n" + " MsgBox \"Welcome to Aspose!\"" + "\r\n" + "End Sub");
// Enregistrer le classeur
workbook.save("output.xlsm", SaveFormat.XLSM);
Modifier la macro VBA dans un classeur Excel en Java
Voici les étapes pour modifier la macro VBA dans les fichiers Excel à l’aide de Java.
- Commencez par charger un classeur existant à l’aide de la classe Workbook.
- Récupérez la collection de modules VBA dans un objet VbaModuleCollection à l’aide de la méthode Workbook.getVbaProject().getModules().
- Récupérez chaque module VBA de la collection dans un objet VbaModule de manière itérative.
- Mettez à jour le nom et le code du module souhaité à l’aide des méthodes VbaModule.setName() et VbaModule.setCodes() respectivement.
- Enfin, enregistrez le classeur à l’aide de la méthode Workbook.save(string, SaveFormat.XLSM).
L’exemple de code suivant montre comment modifier la macro VBA dans un fichier Excel à l’aide de Java.
// Pour des exemples complets et des fichiers de données, rendez-vous sur https://github.com/aspose-cells/Aspose.Cells-for-Java
// Créer un objet de classeur à partir du fichier Excel source
Workbook workbook = new Workbook("sample.xlsm");
// Modifier le code du module VBA
VbaModuleCollection modules = workbook.getVbaProject().getModules();
for (int i = 0; i < modules.getCount(); i++) {
VbaModule module = modules.get(i);
String code = module.getCodes();
// Remplacer le message d'origine par le message modifié
if (code.contains("This is test message.")) {
code = code.replace("This is test message.", "This is Aspose.Cells message.");
module.setCodes(code);
}
}
// Enregistrez le fichier Excel de sortie
workbook.save("output.xlsm");
Obtenez une licence gratuite
Vous pouvez utiliser Aspose.Cells for Java sans limitations d’évaluation à l’aide d’une licence temporaire. Obtenez le vôtre maintenant.
Conclusion
Les macros VBA sont utilisées pour automatiser divers types de tâches dans les feuilles de calcul. Afin de travailler avec les macros VBA par programmation, cet article explique comment ajouter et modifier du code dans les modules VBA à l’aide de Java. Pour en savoir plus, vous pouvez explorer la documentation de l’API de manipulation de feuilles de calcul Java. Vous pouvez également poster vos questions ou requêtes sur notre forum.
Voir également
- Créer des fichiers Excel en utilisant Java sans MS Office
- Convertir des fichiers Excel en PDF en utilisant Java
Conseil : Vous pouvez essayer Aspose outil de suppression de macros VBA en ligne.