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

Hi Everyone,

 

I have a a variable called FiscalYear and it's formatted:

 

value FYF
1 = "FY16"
2 = "FY17"
3 = "FY18"
4 = "FY19"
5 = "Older Than FY16"

 

I have a simple macro:

 

%let FYMacro = 3; 

 

I want the the title to display for the format: 

 

title "Hospital Report for &FYMacro";

 

The result I get is:

Hospital Report for 3

 

 

What I want is:

Hospital Report for FY18



Any suggestions would be greatly appreciated! Thank you! 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Patrick
Opal | Level 21

@hwangnyc

There are also options to use by-group processing and have individual titels created by by-group - but you haven't given us enough detail to propose such an approach.

 

Below code shows an approach to achieve what you've asked for.

proc format;
  value fyf
    1 = "FY16"
    2 = "FY17"
    3 = "FY18"
    4 = "FY19"
    5 = "Older Than FY16"
  ;
run;

%let FYMacro = 3;

title "Hospital Report for %sysfunc(putn(&FYMacro,fyf.))";
proc print data=sashelp.class;
run;

 

View solution in original post

4 REPLIES 4
PaigeMiller
Diamond | Level 26
title "Hospital Report for %sysfunc(putn(&fymacro,fyf.))";
--
Paige Miller
Patrick
Opal | Level 21

@hwangnyc

There are also options to use by-group processing and have individual titels created by by-group - but you haven't given us enough detail to propose such an approach.

 

Below code shows an approach to achieve what you've asked for.

proc format;
  value fyf
    1 = "FY16"
    2 = "FY17"
    3 = "FY18"
    4 = "FY19"
    5 = "Older Than FY16"
  ;
run;

%let FYMacro = 3;

title "Hospital Report for %sysfunc(putn(&FYMacro,fyf.))";
proc print data=sashelp.class;
run;

 

data_null__
Jade | Level 19

There may be a situation where you need to deal with the trailing blanks.  I have not been able to figure a way other than another %SYSFUNC.

 

Capture.PNG

FreelanceReinh
Jade | Level 19

%CMPRES is a bit shorter:

%cmpres(%sysfunc(putn(&FYMacro,fyf)))

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
  • 4 replies
  • 1548 views
  • 0 likes
  • 5 in conversation