DATA Step, Macro, Functions and more

add 2 macro variables coming from SAS EG prompts

Reply
Regular Contributor
Posts: 203

add 2 macro variables coming from SAS EG prompts

This is a very simple one. I try to add 2 macro variables, which are initialized from SAS EG prompts (Number1 and Number2). I currently use this code it should work for non integer number):

 

%let Result = %sysevalf(&Number1.,integer) + %sysevalf(&Number2.,integer); 

%put &Result.;

Unfortunately, only the expression rather than the result is printed. 

Super Contributor
Posts: 331

Re: add 2 macro variables coming from SAS EG prompts

[ Edited ]
Posted in reply to csetzkorn

Hello,

 

Your problem is independant of Eg prompts.

When a macrovariable is created as follows :

 

%let mv1=1; %let mv2=2;

%let mv=&mv1.+&mv2.;

 

The compiler only performs text substitution so you wil end up with &mv.=1+2.

 

If you want to evaluate the resulting expression you have to enclose the whole

expression in an evaluation function %eval() or %sysevalf

 

%let mv=%eval(&mv1.+&mv2.); /* => 3 */

Ask a Question
Discussion stats
  • 1 reply
  • 65 views
  • 2 likes
  • 2 in conversation