Macros
You can save time by using a macro to automate a series of repetitive tasks. A macro lets you specify a sequence of actions so that you can quickly repeat those actions later.
You don’t need any programming experience to use macros — in fact, the basic tools for working with macros are available within the main application window. However, if you want to have more control over your macros, you can use the following built-in programming environments:
•
Microsoft Visual Studio Tools for Applications (VSTA) — the successor to VBA, and an excellent choice for developers and other programming experts. VSTA provides the tools and features that you need to create the most advanced macro projects.
•
Microsoft Visual Basic for Applications (VBA) — a subset of the Microsoft Visual Basic (VB) programming environment, and an excellent choice for beginners. You can use VBA to create basic macros for personal use, but you can also use it to create more advanced macro projects.
For detailed information on the differences between VBA and VSTA, please see the programming guide on the Developer area on the CorelDRAW community website.
Getting started with macros
The macro features for VBA and VSTA are installed with the software by default, but you can manually install these features if necessary. You can specify options for the VBA feature.
To use VSTA macro features with Corel PHOTO-PAINT, you must have Microsoft Visual Studio 2019 installed. To use the VSTA Editor, you must first install Microsoft Visual Studio 2019, Community, Professional, Premium, Ultimate or Enterprise Edition; and then reinstall Microsoft Visual Studio Tools for Applications 2019 from microsoft.com.
If you install Microsoft Visual Studio after installing CorelDRAW Graphics Suite, you must re-install the VSTA macro features by modifying your CorelDRAW Graphics Suite installation. For more information, see To manually install the macro features.
The macro features provide several tools for working with macros in the main application window:
•
Macros toolbar — provides easy access to common macro functions
•
Scripts docker — provides easy access to all available macro projects for VBA, and to basic functions for working with those projects
•
Script Editor (formerly the Visual Basic Editor) — provides advanced functions for creating VBA-based macro projects
•
Visual Studio Editor — provides advanced functions for creating VSTA-based macro projects. The VSTA Editor is accessible only if you have Microsoft Visual Studio 2019 installed.
Creating macros
Macros are stored in modules (also called "code modules"), which are stored in macro projects. The Scripts docker lets you view and manage all of the macro projects, modules, and macros that are available to you.
You can use the Scripts docker to create macro projects in the form of Global Macro Storage (GMS) files or Corel VSTA Projects (CGSaddon). Using such files is an excellent way to bundle the components of your macro project for sharing with others. You can use the Scripts docker to open (or "load") the macro projects that you create, as well as the macro projects that install with the software or that are otherwise made available to you. You can also use the Scripts docker to rename macro projects, as well as to copy and close (or "unload") GMS-based and VSTA macro projects.
Some macro projects are locked and cannot be modified.
When you create a document, a macro project for that document is automatically added to the Scripts docker. Although you can store macros within the macro project for a document — for example, to create an all-in-one template — it is recommended that you instead use GMS files to store your macro projects.
Each macro project contains at least one module. You can use the Scripts docker to add a module to a VBA-based macro project, or to open existing modules for editing. You can also use the Scripts docker to rename or delete VBA modules.
The editing feature is disabled for some modules.
Finally, you can use the Scripts docker to create macros within the available modules. You don’t need any programming experience to create macros; however, if you have programming experience and want to edit VBA macros, you can do so by using the Script Editor. You can also use the Scripts docker to rename and delete VBA macros.
Playing macros
You can perform the actions that are associated with a macro by playing that macro.
Learning more about macros
The Developer area on the CorelDRAW community website can help you with its wealth of useful resources: a programming guide, detailed Object Model reference documentation with code samples, object model diagrams, and in-depth programming articles and tutorials.
The Object Model reference documentation, also referred to as API documentation, includes help on every feature and function that can be automated in the applications. (Collectively, these features and functions are called an "object model.") You can easily access relevant documentation from within the Script Editor.
The Object Model diagrams provide a hierarchical representation of the features and functions that can be automated in CorelDRAW, Corel PHOTO-PAINT, and Corel DESIGNER.
For more detailed information about VBA and its programming environment, please consult the Microsoft Visual Basic Help from the Help menu in the Script Editor.
For more detailed information about VSTA and its programming environment, please consult the Help menu in the VSTA Editor.
To manually install the macro features
1
On the Windows Control Panel, click
Uninstall a program.
2
Double-click
CorelDRAW Graphics Suite on the
Uninstall or change a program page.
3
Enable the
Modify option in the wizard that appears, and follow the instructions.
4
On the
Features page of the installation wizard, enable the following check boxes in the
Utilities list box:
•
Visual Basic for Applications
•
Visual Studio Tools for Applications
The macro features for VBA and VSTA are installed with the software by default.
To specify VBA options
1
Click
Tools Options Corel PHOTO-PAINT.
3
In the
Security area, specify how to control the risk of running malicious macros by clicking
Security Options.
If you want to bypass this security feature, enable the
Trust all installed GMS modules check box, and then proceed to step 6.
4
On the
Security level page of the
Security dialog box, enable one of the following options:
•
Very high — allows only macros installed in trusted locations to run. All other signed and unsigned macros are disabled.
•
High — allows only signed macros from trusted sources to run. Unsigned macros are automatically disabled.
•
Medium — lets you choose which macros run, even if they are potentially harmful
•
Low (not recommended) — allows all potentially unsafe macros to run. Enable this setting if you have virus-scanning software installed, or if you check the safety of all documents that you open.
5
On the
Trusted publishers page of the
Security dialog box, review which macro publishers are trusted. Click
View to display details on the selected macro publisher, or click
Remove to delete the selected macro publisher from the list.
If desired, you can enable or disable the
Trust access to Visual Basic project check box for the selected macro publisher.
6
Disable the
Delay load VBA check box if you want to load the VBA feature at start-up.
To access the macro tools
|
|
Display the Macros toolbar
|
Click Window Toolbars Macros.
A check mark next to the command indicates that the toolbar is displayed.
|
Display the Scripts docker
|
Click Tools Scripts Scripts.
|
Display the Script Editor
|
• Click Tools Scripts Script Editor.
• Click the Script Editor button on the Macros toolbar.
• Right-click Visual Basic for Applications in the Scripts docker, and then click Show IDE.
|
Display the Visual Studio Editor
|
Click Tools Scripts Visual Studio Editor. (VSTA must be installed on your computer.)
|
To create a macro project
•
In the
Scripts docker, do one of the following:
•
Click
Visual Studio Tools for Applications in the list, click
New, and then click
New macro project.
•
Click
Visual Basic for Applications in the list, click
New, and then click
New macro project.
|
|
Open (or "load") a macro project
|
• Click Visual Studio Tools for Applications in the list, click Load, and then choose the project.
• Click Visual Basic for Applications in the list, click Load, and then choose the project.
|
|
Right-click the project in the list, and then click Rename.
|
Copy a GMS-based macro project
|
Right-click the project in the list, click Copy to, and then choose the target location for the copied project.
You cannot copy a document-based macro project. Such projects are stored within a document and cannot be managed separately from that document.
|
Display or hide all modules in the list
|
Click the Simple mode button .
|
Add a module to a VBA macro project
|
• Click the project in the list, click New, and then click New module.
• Right-click the project in the list, and then click New module.
|
Edit a module in a VBA macro project
|
• Click the module in the list, and then click the Edit button .
• Right-click the module in the list, and then click Edit.
|
Rename a module in a macro project
|
Right-click the module in the list, and then click Rename.
|
Delete a module from a macro project
|
• Click the module in the list, and then click the Delete button .
• Right-click the module in the list, and then click Delete.
|
Close (or "unload") a GMS-based macro project
|
Right-click the macro project in the list, and then click Unload macro project.
You can close a document-based macro project only by closing the document in which it is stored.
|
Some macro projects are locked and cannot be modified.
To create a macro
•
In the
Scripts docker, do one of the following:
•
Click the container you want, click
New, and then click
New macro.
•
Right-click the desired container module, and then click
New macro.
|
|
|
• Click the macro in the list, and then click the Edit button .
• Right-click the macro in the list, and then click Edit.
|
|
• Click the macro in the list, and then click the Delete button .
• Right-click the macro in the list, and then click Delete.
|
Some macro projects are locked and cannot be modified.
To play a macro
•
Do any of the following:
•
Click
Tools Scripts Run Script, or click the
Run macro button
on the
Macros toolbar. From the
Macros in list box, choose the project or file in which the macro is stored. From the
Macro name list, choose the macro. Click
Run.
•
In the
Scripts docker, double-click the macro in the list.
•
In the
Scripts docker, click the macro in the list, and then click the
Run button
.
•
In the
Scripts docker, right-click the macro in the list, and then click
Run.
To access Object Model reference documentation from within the Script Editor
1
While in Microsoft Visual Basic for Applications, press
F2 to display the Object Browser.
The Object Browser displays all the features and functions that can be automated in the Script Editor.
2
Choose
PHOTOPAINT from the
Library list box.
The Object Browser is updated to display only the features and functions of Corel PHOTO-PAINT that can be automated in the Macro Editor. Collectively, these features and functions are called an "object model."
3
Click an item in the Object Browser, and press
F1.
You can also display information for any item in the Code window of the Script Editor by clicking that item and pressing F1.