Excel Spalten und Variablen lesen in SAS

Hallo SAS User,

kann ich, wenn ich ein Excel-Sheet über DDE einlese, die tatsächlich eingelesenen Zeilen und Spalten nach ihrer Position prüfen? Hintergrund ist, dass wenn ein Auto-Filter auf einer Excel-Spalte liegt, NUR diejenigen Zeilen über DDE an SAS gegeben werden, die zum Lesezeitpunkt gefiltert sind. Wenn es in SAS die Möglichkeit gäbe, die fortlaufende Zeilennummerierung der Excel-Zeilen zu erkennen, dann hätte ich eine Chance. Das gleiche gilt auch für die eingeblendeten Spalten in Excel, auch hierfür wäre so ein Trick hilfreich.

Danke für jeden Hinweis.

Schöne Grüsse
D. Engfer

SAS/ACCESS

Mein Vorschlag wäre, es nicht über DDE zu machen, sondern über SAS ACCESS TO PC FILE FORMATS. Dann werden auch ausgeblendete Zeilen eingelesen. Zum Beispiel kann man mit PROC IMPORT arbeiten:

proc import datafile='c:\temp\mappe1.xls' out=tabelle1 dbms=excel replace;
   sheet=
'Tabelle1';
run;

DDE commands

Ich bin ohne SAS/Access und will die Möglichkeiten von Excel-DDE ausnutzen. Leider finde ich hier und da einige Befehle wie SAVE.AS...oder INSERT aber gibt es auch eine vollständige DDE Befehlsliste? Wer weiss was? DAnke.

Gruss
D. Engfer

Bei den Befehlen handelt es

Bei den Befehlen handelt es sich um den EXCEL4.0 Makrobefehlsstandard. Dieser ist als Hilfedatei von Microsoft verfügbar und trägt den Namen "Macrofun.hlp". Man kann sie bei Microsoft herunterladen.

Gruß
Klaus Landwich

vielen Dank Herr

vielen Dank Herr Landwich,

aha, dann hat es nichts zu tun mit VBA, das ja erst später kam mit Excel. Somit ist das heutige Objektmodell von Excel nicht ansprechbar mittels DDE. Sollte man da nicht besser OLE benutzen?

OLE ist mit Sicherheit der

OLE ist mit Sicherheit der aktueller Standard, hat aber auch den Nachteil, dass man es mit SAS/AF programmieren muss. Aus einem DataStep heraus lässt es sich nicht aufrufen.

DDE hingegen kann ich ohne SAS/AF verwende.

Nur der Vollständigkeit halber:
SAS/AF ist eine Sprache zum Entwickeln von Bildschirmmasken.

Gruß
Klaus Landwich