BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
pritish069
Fluorite | Level 6
%macro con (p=);
proc sort data=work.superstore;
by descending profit;
%if profit ge &p %then %do;
title 'Profit';
proc print data=work.superstore;
%end;
%mend;
run;

%con (p=500);

I want to print the data if the condition is met in the profit variable but the result i am getting is the entire table.

Thank you in advance

 

Capture.JPG

1 ACCEPTED SOLUTION

Accepted Solutions
RW9
Diamond | Level 26 RW9
Diamond | Level 26

And did you try my code as that is what it does, or do you need to put the words macro in there?

%macro for_macros_sake (p=);

proc sort data=work.superstore;
  by descending profit;
  where profit >= &p.;
run;
title "Profit"; proc print data=work.superstore; run;

%mend for_macros_sake;

%for_macros_sake (p=500);

View solution in original post

4 REPLIES 4
RW9
Diamond | Level 26 RW9
Diamond | Level 26

So you want to only print data where profit is the given value correct?

If so:

%let p=500;

proc sort data=work.superstore;
  by descending profit;
  where profit >= &p.;
run;
title "Profit"; proc print data=work.superstore; run;
pritish069
Fluorite | Level 6
I want the macro to sort and print where the profit is the given value
RW9
Diamond | Level 26 RW9
Diamond | Level 26

And did you try my code as that is what it does, or do you need to put the words macro in there?

%macro for_macros_sake (p=);

proc sort data=work.superstore;
  by descending profit;
  where profit >= &p.;
run;
title "Profit"; proc print data=work.superstore; run;

%mend for_macros_sake;

%for_macros_sake (p=500);
pritish069
Fluorite | Level 6
Thankyou!

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—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
  • 4 replies
  • 2562 views
  • 0 likes
  • 2 in conversation