Hello everyone,
I know we can use SAS x command to open outside file or application such as Excel using code 1 as follow:
Also we can use another method to open excel :see code 2
My question is Could we open Excel in background? I mean open excel at invisible status,,,if this is not available,,, open excel at its minimized window status will be another alternative solution.
Because I don't want the opened excel appear and cover our SAS console.
Thanks
Mike
code1:
options noxwait noxsync;
x '"C:\Program Files\Microsoft Office\Office12\EXCEL"';
code 2:
OPTIONS NOXWAIT NOXSYNC;
DATA _NULL_;
RC=SYSTEM('START EXCEL');
RC=SLEEP(3);
RUN;
PUT '[app.minimize()]';
Thank you Art,
The PUT function works well to minimize a new opened excel file.
but how to minimize Excel console before opened an excel file?
because if we want to open a excel file ,at first we should open Excel console firstly use one of the following SAS codes:
options noxwait noxsync;
x '"C:\Program Files\Microsoft Office\Office12\EXCEL"';
or:
OPTIONS NOXWAIT NOXSYNC;
DATA _NULL_;
RC=SYSTEM('START EXCEL');
RC=SLEEP(5);
RUN;
what I want to minimize firstly is the Excel console.
Thank you!
Mike
Mike,
Once you get a solution mark the thread as being answered.
Given what you want to do, forget my previous advice of using app.minimize()
The answer is a bit convoluted, but works.
First, create a special shortcut for Excel. I did that by going to where Excel was located on my computer, right clicked on it, and then clicked on create shortcut.
I then created a folder, under Office11 (which I named test) and then dragged the shortcut to that folder.
Then I right clicked on the shortcut and renamed it to be excel. Then (still within properties) I set the value of run to be minimized.
After doing that, I changed the SAS code to open that link rather than opening Excel directly. Having done that, Excel never appeared on the screen, but everything was accomplished. The code I ran was:
%let pw=abcdefg;
options noxwait noxsync;
x '"C:\Program Files\Microsoft Office\Office11\test\EXCEL.lnk"';
data _null_;
x=sleep(3);
run;
filename ExcelCmd dde 'Excel|system';
data _null_;
file ExcelCmd;
s = '[open(' || quote ("c:\trialdata.xls.") ||",,,,""&pw."")]";
put s;
run;
Thank you Art,
also I found an option works well ,but just for mininize ,can't run at background or invisible:
options noxwait noxsync xmin;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.