CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST...

28
CST STUDIO SUITE™ CST STUDIO SUITE™ Introd oduct ct io ion in V n VBA Macro usage and d programming M. Balk M. Balk Ex Exis istin tin g Ma Macro cro s Di Di ff ff eren eren t Macr t Macro Ty Types pes Templates Templates St St ruc ruc tur tur e of a Ma of a Macr cr o Example Example

Transcript of CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST...

Page 1: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

CST STUDIO SUITE™ CST STUDIO SUITE™ IInnttrrododuuctctioionn iin Vn VBBAA

MMaaccrroo uussaaggee aannd d pprrooggrraammmmiinngg

M. BalkM. Balk

ExExisistintingg MaMacrocross

DiDifffferenerent Macrt Macroo TyTypespes

TemplatesTemplates

StStrucructurturee of a Maof a Macrcroo

ExampleExample

Page 2: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

OutlineOutline

WhWhyy mmaacrcroo pprrogograrammmiminng?g?

ExExisistitinngg mamaccroross

DifDifferferent ent typtypeses of mof macracrosos

CrCreaeatiting ang and tnd tesestitinngg neneww mamacrcrosos

GeGettttiningg momorere ininfoformrmatatioionn

Page 3: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Outline

Why macro programming?

Existing macros

Different types of macros

Creating and testing new macros

Getting more information

Page 4: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Why Macro Programming?

Automate common tasks, save time, increase productivity

Extend the program‘s capabilities, e.g. post processing, optimization

Customize the program for particular applications

Make advanced functionality available to less experienced users

CST STUDIO SUITE‘s macro language:

Compatible to the widely used VBA (Visual Basic for Applications) COM based

CST STUDIO SUITE can be controlled by other applications CST STUDIO SUITE can control other applications

Page 5: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Integration Into Workflow

CST Studios can be both: OLE client and server

MS WindowsScripting

Host

Excel, Word,Matlab, AutoCad,

etc...

CST Software(MWS, DS)

e.g. bidirectional Excel link

COMDCOM

reports

e.g. ppt-Reports

OLE: CommunicationStandard for Data Exchange

Page 6: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Integration Into Workflow

! "C:\Program Files\CST STUDIO SUITE 2006B\CST DESIGN ENVIRONMENT.exe" –m D:\MBK\Start_CST_5.bas

MatlabCST Software(CST MWS,

CST DS)

Call via command line option

Call:

Execute command in Matlab CST MWS is calledwithin theCST DESIGNENVIRONMENT

Path of the VBA script

Sub MainOpenFile("D:\MBK\test1\test1.mod")Solver.StartSave

End Sub

Opens an existing CST MWS file

Start of Transient Solver

Saves results and gives control back to Matlab

Page 7: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Project Templates

File -> New...

File -> Select Template...or later:

At the beginning:

Customize the default settings for particular types of applications.

The template library can be easily extended

Page 8: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Input some commands you often use for your MWS structures, e.g.:

Frequency range, units, Background-mat + boundaries

Definition of materials (parameters, favorite colours ...)

Working plane settings (especially snapping !)

Monitors at favorite frequencies, ...

Open the history list

Mark the commands, press „Macro“

Give a name to your macro, e.g. „File / My defaults“

Click „Make globally available“, then „OK“

Project Templates

Page 9: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Postprocessing

Import and compare with measured data

Special postprocessing (e.g. TDR)

Store Views and Animations in different formats

Userdefined goal-functions (e.g. antenna goal)

Creating a Powerpoint Presentation

Customize CST MWSexactly to your needs

Page 10: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Outline

Why macro programming?

Existing macros

Different types of macros

Creating and testing new macros

Getting more information

Page 11: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Useful, predefined macros

Page 12: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Useful, predefined macros

Page 13: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Useful, predefined macros

Page 14: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Useful, predefined macros

Page 15: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Outline

Why macro programming?

Existing macros

Different types of macros

Creating and testing new macros

Getting more information

Page 16: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Structure Macros and Control Macros

Structure macros

Modify the structure

Stored in the history list for parametric model definition

Name: ... . mcs

Example: Creation of advanced geometry, e.g. spirals,…c

Macros -> Construct -> Coils -> Sectioned Spiral

Page 17: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Control macros

Do not modify the structure

Do not need to be stored in the history list

Name: ... . mcr

Examples: Postprocessing, Calculation of analytical lineimpedance, etc.

Structure Macros and Control Macros

Macros -> Calculate -> Calculate Analytical LineImpedance

Page 18: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Project macros

Can be either command macros or structure macros

Specific for a particular project

Stored with the project.

Not available for other projects as well

Global macros

Can be either command macros or structure macros

Generally useful

Stored in a global location (Global Macro Path)

Can be shared accross projects

Project Macros and Global Macros

Page 19: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Result Templates

Performs an action

Purpose: Customized and automized postprocessing

Store in <installationpath>/Library/Result Templates/my_template.rtp

Will be evaluated after each solver run.

Can perform just an action or return 1D or 0D values.

Page 20: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Result Templates

Returns a value

Purpose: Customized and automized postprocessing

Store in <installationpath>/Library/Result Templates/my_template.rtp

Will be evaluated after each solver run.

Can perform just an action or return 1D or 0D values.

Page 21: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Outline

Why macro programming?

Existing macros

Different types of macros

Creating and testing new macros

Getting more information

Page 22: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

The Integrated Development Environment

Open IDE

Page 23: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Edit macro code here (syntax highlighting)

Run the macro Debug the macro

The Integrated Development Environment

Page 24: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

The Integrated Development Environment

Macro Debugger:

 Set breakpoints Step through the macro Watch variables etc…

Page 25: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

The Integrated Development Environment

Graphical GUI builder

Source code for the dialog box is automatically created andInserted at the caret‘s position

Page 26: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

There exist different ways to create a macro

Copy and modify an existing macro

Go to the history list, select lines and press „Macro“

Use Macro -> Make VBA Control Macro and start from Scratch

Let MWS create the macro‘s framework by pressing „Edit“ for

User defined excitation function

User defined parameter sweep watch

User defined optimizer goal function

How to Create Macros?

Page 27: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Outline

Why macro programming?

Existing macros

Different types of macros

Creating and testing new macros

Getting more information

Page 28: CST STUDIO SUITE™ IInttrroductioniin VBA ...docshare01.docshare.tips/files/21627/216273082.pdfCST Studios can be both: OLE client andserver MS Windows Scripting Host Excel, Word,

Advanced Topics Manual

Check the VBA online manual(Help -> VBA Macro Language)

Have a look at the pre-loaded

macro examples

Visit a special training class on macro

programming

Learning by doing….

Getting More Information