
As macros VBA são usadas para executar tarefas repetitivas, gerar gráficos e formulários, etc. em apresentações do PowerPoint. Ao trabalhar com as apresentações de forma programática, pode ser necessário manipular macros VBA. De acordo com isso, neste artigo, você aprenderá como adicionar, extrair ou remover macros VBA em apresentações do PowerPoint usando Java.
- API Java para macros VBA do PowerPoint
- Adicionar macros VBA em apresentações do PowerPoint
- Extraia macros VBA de apresentações do PowerPoint
- Remover macros VBA de apresentações do PowerPoint
API Java para macros VBA do PowerPoint
Para trabalhar com macros VBA em apresentações, usaremos Aspose.Slides for Java. É uma API rica em recursos que permite criar ou manipular apresentações do PowerPoint a partir de seus aplicativos Java. Você pode baixar a API ou instalá-la usando as seguintes configurações do Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides</artifactId>
<version>21.7</version>
<classifier>jdk16</classifier>
</dependency>
Adicionar macro VBA em apresentações do PowerPoint usando Java
A seguir estão as etapas para adicionar uma macro VBA em uma apresentação do PowerPoint usando Java.
- Primeiro, crie uma instância da classe Apresentação para carregar a apresentação do PowerPoint.
- Atribua um novo VbaProject usando o método Presentation.setVbaProject().
- Adicione um módulo VBA vazio usando o método Presentation.getVbaProject().getModules().addEmptyModule(String).
- Obtenha a referência do módulo adicionado em um objeto IVbaModule.
- Adicione o código-fonte ao módulo VBA usando o método IVbaModule.setSourceCode().
- Crie referências ao Microsoft Office e adicione-as à coleção Presentation.getVbaProject().getReferences().
- Finalmente, salve o arquivo de apresentação usando o método Presentation.save(String, SaveFormat.Pptm).
O exemplo de código a seguir mostra como adicionar macro VBA em uma apresentação do PowerPoint usando Java.
// Instanciar apresentação
Presentation pres = new Presentation();
try {
// Criar novo projeto VBA
pres.setVbaProject(new VbaProject());
// Adicionar módulo vazio ao projeto VBA
IVbaModule module = pres.getVbaProject().getModules().addEmptyModule("Module");
// Definir código-fonte do módulo
module.setSourceCode("Sub Test(oShape As Shape)MsgBox Test End Sub");
// Criar referência para<stdole>
VbaReferenceOleTypeLib stdoleReference = new VbaReferenceOleTypeLib("stdole", "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");
// Criar referência ao Office
VbaReferenceOleTypeLib officeReference = new VbaReferenceOleTypeLib("Office",
"*\\G{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}#2.0#0#C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE14\\MSO.DLL#Microsoft Office 14.0 Object Library");
// Adicionar referências ao projeto VBA
pres.getVbaProject().getReferences().add(stdoleReference);
pres.getVbaProject().getReferences().add(officeReference);
pres.save("test.pptm", SaveFormat.Pptm);
} finally {
if (pres != null) pres.dispose();
}
Extraia macros VBA do PowerPoint usando Java
A seguir estão as etapas para extrair macros VBA de uma apresentação do PowerPoint usando Java.
- Primeiro, carregue a apresentação do PowerPoint habilitada para macro usando a classe Apresentação.
- Em seguida, verifique se Presentation.getVbaProject() retorna nulo.
- Percorra cada IVbaModule na coleção usando Presentation.getVbaProject().getModules().
- Finalmente, extraia o código-fonte usando o método IVbaModule.getSourceCode().
O exemplo de código a seguir mostra como extrair macros VBA do PowerPoint.
// Carregar apresentação
Presentation pres = new Presentation("VBA.pptm");
try {
if (pres.getVbaProject() != null) // check if Presentation contains VBA Project
{
// Faça um loop pelos módulos VBA
for (IVbaModule module : pres.getVbaProject().getModules())
{
System.out.println(module.getName());
System.out.println(module.getSourceCode());
}
}
} finally {
if (pres != null) pres.dispose();
}
Remover macros VBA do PowerPoint
Você também pode remover uma macro VBA específica de um PowerPoint usando seu índice no projeto VBA. A seguir estão as etapas para realizar esta operação.
- Primeiro, carregue a apresentação do PowerPoint habilitada para macro usando a classe Apresentação.
- Em seguida, remova o módulo VBA por índice usando o método Presentation.getVbaProject().getModules().remove(IVbaModule).
- Finalmente, salve a apresentação atualizada usando o método Presentation.save(String, SaveFormat.Pptm).
O exemplo de código a seguir mostra como remover uma macro VBA do PowerPoint.
// Carregar apresentação
Presentation pres = new Presentation("VBA.pptm");
try {
// Acesse o módulo Vba e remova
pres.getVbaProject().getModules().remove(pres.getVbaProject().getModules().get_Item(0));
// Salvar apresentação
pres.save("test.pptm", SaveFormat.Pptm);
} finally {
if (pres != null) pres.dispose();
}
Obtenha uma licença de API gratuita
Você pode usar o Aspose.Slides for Java sem limitações de avaliação solicitando uma licença temporária.
Conclusão
Neste artigo, você aprendeu a trabalhar com macros VBA do PowerPoint usando Java. Particularmente, você viu como adicionar, extrair e remover macros VBA em apresentações do PowerPoint. Para explorar outras funcionalidades da API, você pode consultar a documentação. Além disso, sinta-se à vontade para nos informar sobre suas dúvidas por meio do nosso fórum.
Veja também
Dica: Você pode tentar Aspose ferramenta de remoção de macro VBA online.