LesezeichenAbonnierenRSS-Feed abonnieren
Sven4IBM
Fluorite | Level 6

Wir haben den SAS Enterprise Guide lokal und SAS selbst auf einem Server installiert. Gibt es neben SAS PC nun die Möglichkeit mit dem SAS Enterprise Guide eine Excelvorlage zu öffnen und diese selektiv mit SAS zu befüllen ?

 

Mit dem lokal installierten SAS PC funktioniert dies über…

options noxsync noxwait;

data _null_;
call system("'C:\Temp\test.xls'");
run;

filename recrange dde 'Excel|C:\Temp\[test.xls]Tabelle1!Z1S1:Z4S4' notab;

data price_list;
input band album date price $3.;
cards;
1  2  3  4
2  3  4  5
3  4  5  6
4  5  6  7
;
run;

data _null_;
set price_list;
file recrange;
put band '09'x album '09'x date '09'x price;
run;

filename recrange;

 

 

Vielleicht hat jemand noch einen anderen Weg bzw. Lösung parat.

4 ANTWORTEN 4
AndreasMenrath
Pyrite | Level 9

Hallo Sven,

also mit den Standardmitteln von EG ist mir kein Weg bekannt.

 

Für einen ähnlichen Fall, haben wir uns ein EG Addin programmieren müssen. (https://www.analytical-software.de/fileadmin/doc/papers/KSFE2016_SAS_Enterprise_Guide_als_Tor_ins_Un...

 

Als Alternative kannst du natürlich auch aus Excel heraus auf SAS Datasets zugreifen (wenn die passenden SAS Treiber installiert sind) und dann mit VBA Makros arbeiten.

 

Letzte Möglichkeit wären noch andere Tools, die sowohl SAS Datasets lesen können als auch Excel schreiben können. Hierfür muss man allerdings auch Einiges an Aufwand einplanen.

 

Viel Erfolg und viele Grüße

Andreas Menrath

Kurt_Bremser
Super User

Nur wenn der Server auf Windows läuft und auch Excel installiert hat.

Der Enterprise Guide ist auf .NET aufgebaut und verwendet COM bzw. DCOM für Interprozess-Kommunikation; DDE wird nicht unterstützt.

DDE ist außerdem uralt und wird auch von MS selbst nicht mehr entwickelt/unterstützt. Es funktioniert einfach weiter, aber man sollte nichts mehr darauf aufbauen.

 

Ich würde die Gelegenheit nützen und den ganzen Prozess durchleuchten. Siehe dazu mein Maxim 43.

Wenn man schon einen Server hat, dann sollte man den auch wirklich benützen und ausreizen. Sprich Web Reports, Web Apps etc. Unterm Strich ist nur interessant, welche Information wen erreichen muss. In unserem Fall ist Excel als BI-Tool (auch auf Betreiben der Innenrevision!) außen vor.

Wer sichs unbedingt antun will, soll das AddIn für MS Office nutzen, aber als SAS-Entwickler lehne ich jegliche Verantwortung für Excel kategorisch ab.

Abgesehen davon, dass Excel auf > 90% aller mobilen Geräte keine Rolle spielt. Und das sind die Abhol-Plattformen der Zukunft. Wer jetzt noch dafür entwickelt, fackelt nur Manpower ab. IMHO.

jakarmanl
Returning User | Level 2

Empfehlung: SAS/ACCESS® 9.4 Interface to PC Files: Reference, Fourth Edition    -  LIBNAME Statement Syntax for the XLSX Engine

https://documentation.sas.com/?docsetId=acpcref&docsetTarget=n0oj9f6i838mymn148890ckla700.htm&docset...
Das sheetname ist die name des tabellen und jeder colomn hat die name wie im SAS  in die erste reie.


macrobo
Fluorite | Level 6

Hallo Sven,

 

das Befüllen von Named Ranges in Excel geht auch mit der Excel Libname Engine: http://www.stratia.ca/papers/excel_libname.pdf

 

Außerdem gibt es die sehr flexible SAS Prozedur PROC D2O (Data2Office): http://www.kybeidos.de/fileadmin/user_upload/L%C3%B6sungen/Material/SAS/D2O_Handout.pdf

Mittlerweile wird diese wieder vertrieben von BeyondBytes: http://www.computentsystems.de

 

Viel Erfolg

Robert

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

Diskussionsstatistiken
  • 4 Antworten
  • 1535 Aufrufe
  • 0 Kudos
  • 5 in Unterhaltung