Управление кодами VBA Visio с поддержкой макросов diagram.

Добавить модуль VBA

Следующий пример кода добавляет новый модуль VBA и код макроса и сохраняет выходные данные в формате VSDM. Один раз вы откроете выходной файл VSDM в Microsoft Visio и щелкните значокРазработчик > Visual Basic команд меню, вы увидите модуль с именем «TestModule», а внутри него вы увидите следующий код макроса.

 Sub ShowMessage()

    MsgBox "Welcome to Aspose!"

End Sub

Вот пример кода для создания выходного файла VSDM с модулем VBA и кодом макроса.

// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(Test.class);
// Load a diagram
Diagram diagram = new Diagram(dataDir + "1.vsdm");
//Add module
int index = diagram.getVbaProject().getModules().add(VbaModuleType.PROCEDURAL, "TestModule");
//Get module
com.aspose.diagram.VbaModule module = diagram.getVbaProject().getModules().get(index);
//Set module
module.setCodes("Attribute VB_Name = \"module2\"\r\n Sub Button1_Click()\r\n\r\n MsgBox \"Welcome to Aspose!\"\r\n\r\nEnd Sub\r\n");
diagram.save(dataDir + "1out.vsdm", SaveFileFormat.VSDM);

Изменить VBA или макрос

Следующий пример кода загружает исходный файл Visio, внутри которого находится следующий код VBA или макроса.

 Sub Button1_Click()

    MsgBox "This is test message."

End Sub

После выполнения образца кода Aspose.Diagram код VBA или макроса будет изменен следующим образом.

 Sub Button1_Click()

    MsgBox "This is Aspose.Diagram message."

End Sub

Вы можете скачатьисходный файл Visio ивыходной файл Visio по указанным ссылкам.

// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(Test.class);
// Load a diagram
Diagram diagram = new Diagram(dataDir + "1.vsdm");
//Get module
com.aspose.diagram.VbaModule module = diagram.getVbaProject().getModules().get(2);
//Set module
module.setCodes("Attribute VB_Name = \"module2\"\r\n Sub Button1_Click()\r\n\r\n MsgBox \"This is Aspose.Diagram message.\"\r\n\r\nEnd Sub\r\n");
diagram.save(dataDir + "1out.vsdm", SaveFileFormat.VSDM);

Предварительные темы