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

I have a macro:

 

%generate_string();

    %let string= apple;

    %put &string;

%mend;

 

I have a data step where I have to concatenate a value with this macro output:

data _null_;

    %let output = This is an || %generate_string() ||.;

    %put &output;

run;

 

I need output as :

This is an apple.

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20
%macro generate_string;
%global string;
    %let string= apple;

  &string

%mend;

data _null_;
     output = "This is an"||" "||"%generate_string"||".";

    put output=;

run;

View solution in original post

3 REPLIES 3
novinosrin
Tourmaline | Level 20
%macro generate_string;
%global string;
    %let string= apple;

  &string

%mend;

data _null_;
     output = "This is an"||" "||"%generate_string"||".";

    put output=;

run;
Astounding
PROC Star

You may be overcomplicating this.  If you start as @novinosrin suggested:

 

%macro generate_string;
   %let string = apple;
   &string
%mend generate_string;

Now you can get the value of &STRING easily:

 

%let output = This is an %generate_string.

 

If you need the output as a character variable within a data set, you can similarly use:

 

data want;

set have;

output = "This is an %generate_string.";

run;

Satish_Parida
Lapis Lazuli | Level 10
%macro generate_string;
apple
%mend generate_string;

data _null_;
    output1 = 'This is an ' || "%generate_string" ||.;
    put output1=;
run;

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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
  • 3 replies
  • 1189 views
  • 2 likes
  • 4 in conversation