HI, Here is what I have tried so far. Thank you for your help. data Profile; input Acct_ID 1-4 Name $ 6-11 Birthday $ 13-21 Sex $ 23-24 State $ 25-26 Cust_Type $ 28-33 Product $ 35-42 Balance 44-47 Last_Tran_Date $ 49-57; Cards; 1001 John 1/1/1962 M CA Gold Checking 1000 9/1/2015 1002 Mary 2/1/1972 F CA Silver Saving 2000 10/1/2015 1003 Peter 3/1/1982 M NY Gold Loan 3000 10/3/2016 1004 Mary 4/1/1992 F NY Silver Checking 4000 9/17/2016 1005 Linda 5/1/1994 F WA Gold Saving 5000 1006 Susan 6/1/1997 F WA Gold Loan 1000 9/15/2016 1007 Sam 7/1/1999 M CA Gold Checking 2000 2/1/2016 1008 Thomas 8/1/1962 M CA Silver Checking 3000 7/1/2016 1009 Linda 9/1/1982 F NY Silver Saving 4000 ; run; data profile1; set profile; Birthday1 = input (Birthday, mmddyy10.); Last_Tran_Date1 = input (Last_Tran_Date, mmddyy10.); Tran_Year = year (Last_Tran_date1); run; data profile2; set profile1; today = date(); days = today -birthday1; age = floor (days/365); drop today days birthday birthday1; run; *PROC PRINT--------------------------------------------------------------------------------------------------------------------------; %macro final (title, state1 =, state2 =, age =, tran_year =, var = ); data profile3; retain &var; set profile2; if tran_year ne .; where age &age and Tran_Year = &Tran_year and (State = "&state1" or state = "&state2"); keep acct_ID Name Age Balance Last_Tran_Date tran_year; run; ods rtf file = "/folders/myfolders/macro.rtf"; proc sort data = profile3 out = profile4; by tran_year; run; proc print data = profile4 noobs sumlabel= "Total Balance" grandtotal_label= "Grand Total" width=uniformby; by tran_year; sum balance; *need macro for total balance var &var; title2 j=l "Title: &title" j=r Run date: "%sysfunc(date(),worddate.)"; title3 j=l "State: &state1, &state2" j=c "Age &age" j=r "Tran Year: &tran_year"; run; ods rtf close; %mend final; %final (Detail Listing of Account, state1 = CA, state2 = NY, age <=40, tran_tear = 2016, Acct_ID Name Age Balance Last_Tran_Date);
... View more