SAS Programming

DATA Step, Macro, Functions and more
BookmarkSubscribeRSS Feed
DanielDor
Obsidian | Level 7

Greetings,

 

I have 2 issues wity my ODS Excel:

 

1. I Would like to export reports using ODS EXCEL From Left-to-Right. In my previous computer, everything worked as expected. In my new computer, all Excel Reports are generated from Right-to-Left without capability to change it. Code below:

 

ods excel file="C:\Users\daniel\KPIs_Daily_Summary_Export.xlsx" options(sheet_name="QBR_And_CooP" Sheet_Interval='none' embedded_titles="yes" sheet_layout='LTR');

title 'CooP';

proc print data=COOP_FINAL label; run;
ods excel close;

 

Print Screen below:

DanielDor_1-1597287273442.png

 

 

2. From some reason, my titles are being printed in way which connect the headers names. This creates a way in which when I do pivot table on the file, I get concatenated names:

 

Print Screen Below:

DanielDor_2-1597287308999.png

 

 

Please advise 🙂 @EyalGonen 

 

Thanks!

 

D

5 REPLIES 5
ChrisNZ
Tourmaline | Level 20

>  In my new computer, all Excel Reports are generated from Right-to-Left without capability to change it. 

What's the difference in configuration between the computers? Are Excel and Windows configured identically? As for SAS, run proc options and compare the configurations.

EyalGonen
Lapis Lazuli | Level 10

Hi @DanielDor 

 

About Q1 check out https://communities.sas.com/t5/SAS-Users-Group-in-Israel/%D7%94%D7%A4%D7%A7%D7%AA-%D7%93%D7%95%D7%97... maybe you have set the SAS BIDI option to "YES" and that is why you get your Excel file in RTL layout?

 

HTH,

Eyal

DanielDor
Obsidian | Level 7
Hi Eyal,

For question 1, i've did as following, and it is working!

%put &sysvlong; /* To validate I have version 9.4M6*/
options bidi=no;

For question 2, any ideas?

Thanks!

Daniel

EyalGonen
Lapis Lazuli | Level 10

Hi @DanielDor 

 

I have no idea about Q2. Perhaps you can try to "force" a line break in the column header by embedding the "ODOA" hex values in the header? Perhaps something like this:

 

label = "line1 %sysfunc(byte(13))%sysfunc(byte(10)) line2";

 

I have not tried it

 

All the best,

Eyal

EyalGonen
Lapis Lazuli | Level 10
Daniel, join our local SAS users group in Israel at https://communities.sas.com/t5/SAS-Users-Group-in-Israel/gp-p/Israel for Hebrew related questions

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

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