BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
leti_ors96
Calcite | Level 5

Hello,

I want to display a macro variabile in a %window. My program is:

 

%let t=hello;

 

%window info

#6 @5 'your macro variabili is:'

#8 @5 &t;

%display info;

 

But with this code I see only 'your macro varibile is:', but I would like tu see 'hello'. How could I do?

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Astounding
PROC Star

When you leave out quotes, that tells SAS that &t is the name of a macro variable.  The user is allowed to enter a value for it when the %window gets %displayed.

 

In this case, the %display statement allows the user to enter a value for the macro variable named hello.

 

If you want &t to become part of the displayed text, rather than a name that the user can type into the %display, put it in quotes.  Double quotes are needed:

 

#8  @5  "&t" ;

 

If you want the macro variable t to be supplied by the user when %displaying the %window, get rid of the &:

 

#8  @5  t  5;

 

The 5 characters are enough that the user can enter "hello".

View solution in original post

2 REPLIES 2
Reeza
Super User

Try using double quotes instead of single Macro variables do not resolve in single quotes.

 


@leti_ors96 wrote:

Hello,

I want to display a macro variabile in a %window. My program is:

 

%let t=hello;

 

%window info

@#6 @5 'your macro variabili is:'

@#8 @5 &t;

%display info;

 

But with this code I see only 'your macro varibile is:', but I would like tu see 'hello'. How could I do?

 

 


 

Astounding
PROC Star

When you leave out quotes, that tells SAS that &t is the name of a macro variable.  The user is allowed to enter a value for it when the %window gets %displayed.

 

In this case, the %display statement allows the user to enter a value for the macro variable named hello.

 

If you want &t to become part of the displayed text, rather than a name that the user can type into the %display, put it in quotes.  Double quotes are needed:

 

#8  @5  "&t" ;

 

If you want the macro variable t to be supplied by the user when %displaying the %window, get rid of the &:

 

#8  @5  t  5;

 

The 5 characters are enough that the user can enter "hello".

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 608 views
  • 0 likes
  • 3 in conversation