Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Catrex am 02.01.05 - 00:49:40

Titel: Frage zu Excel-Export via NotesScript
Beitrag von: Catrex am 02.01.05 - 00:49:40
Hallo,

ich hätte mal eine Frage bzgl. des Exportes von Daten aus einer Ansicht per Notes Script. Bislang habe ich es immer so gemacht, dass per Script eine neue Exceldatei erzeugt wurde. Nun möchte ich aber den Export von bestimmten Daten in eine bereits vorhandene und vorformatierte Exceltabelle realisieren.

Es müsste doch eigentlich 2 Möglichkeiten geben das hinzubekommen. Zum einen kann man die fertige Tabelle der Datenbank in einem RT-Feld anfügen oder ich  lege die Tabelle in einen bestimmten Ordner und öffne sie dort direkt. Nun weiss ich aber nicht wie ich diese Datei dann per Script öffnen kann.

Bislang habe ich das immer so gemacht:

Dim xlApp As Variant
Set xlApp = CreateObject("Excel.Application")
Set xlsheet = xlApp.Workbooks(1).Worksheets(1)
xlsheet.Name = "DB-Export"

Aber nun muss ich doch den Create-Befehl ersetzen und die Pfadangebae noch mit reinnehmen, oder ?

Wäre echt super wenn ihr mir weiterhelfen könntet.

mfg

Sebastian
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: mibo11 am 02.01.05 - 09:31:13
Hallo Sebastian,

der Befehl heißt GetObject(filename,"Word.Document").

Du findest die Beschreibung in der Designer Hilfe.

Gruß Sascha
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: mibo11 am 02.01.05 - 11:54:06
der Befehl heißt GetObject(filename,"Word.Document").
Gruß Sascha

Nachtrag:

es muss natürlich in deinem Fall lauten:

GetObject(filename,"Excel.Application")

Gruß Sascha
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: Semeaphoros am 02.01.05 - 15:34:50
Das ist das eine, dass es Excel.Application heissen muss, das andere, mit dem GetObject wird ein OLE-Objekt geholt, das kann Sinn machen, ist aber leicht was anderes, als Sebastian gefragt hat.


Wenn die Datei im Filesystem liegt (oder von einem Attachement her ins FS gelöst wurde), dann geht es anders:

Dim xlApp As Variant
Set xlApp = CreateObject("Excel.Application")
Call xlApp.Workbooks.Open(Dateiname)

Die Designer-Hilfe hilft da allerdings nicht besonders weiter, wichtiger ist die Hilfe des Zielsystems, in diesem Falle Excel, bzw. ganz genau die in Excel implementierte Version von VBA
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: mibo11 am 03.01.05 - 00:11:35
Wenn die Datei im Filesystem liegt (oder von einem Attachement her ins FS gelöst wurde), dann geht es anders:

Dim xlApp As Variant
Set xlApp = CreateObject("Excel.Application")
Call xlApp.Workbooks.Open(Dateiname)


Hallo,

ich wollte hier nun nochmals kurz anmerken, dass dieser Code ebenfalls zum gewünschten Ergebnis führen sollte.

   Dim x As Variant
   Set x = getobject(filename)
   x.Application.Visible = True
   x.Parent.Windows(1).Visible = True

Gruß Sascha
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: Catrex am 04.01.05 - 18:56:41
Hallo,

zunächst einmal möchte ich mich für die schnellen Antworten bedanken und mich enttschuldigen, dass ich nun erst antworte.

Ist es denn so, das für den Filename auch eine komplette Pfadangabe eingegeben werden kann ?

mfg

Seabstian !
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: koehlerbv am 04.01.05 - 19:00:36
Dort kannst Du nicht nur, Du sollst sogar die komplette Laufwerks-/Pfadangabe angeben - hierfür werden keinerlei Defaults oder PATH-Angaben ausgewertet.

HTH,
Bernhard
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: Catrex am 04.01.05 - 19:59:49
Ja das klappt nun auch wunderbar. Nur ein Problem habe ich noch.

Also der Export soll in eine fertige Exceltabelle stattfinden. Und dort wiederrum in das dritte Arbeitsblatt. Bislang bin ich sowet gekommen

   Set xlApp = CreateObject("Excel.Application")
   xlApp.visible = True
   Call xlApp.Workbooks.Open("C:\.....\test.xls")
   Set xlsheet = xlApp.Workbooks(1).Worksheets(3)
   xlsheet.Name = "Notes Datenexport"

Dann macht er den Export auch in das dritte Blatt. Wunderbar. Zum Beispiel: xlsheet.Cells(rows,3).value = doc.feld_1l(0) Nur wie bekomme ich das hin, das er mir das dritte Blatt auch anzeigt ? Das muss ich ja auch noch auf "visible" setzen, oder ? Wenn ja wie ?

Weil wenn ich dann noch die Daten ein wenig weiter anpassen möchte bekomme ich eine Fehlermeldung:

Script:       xlsheet.Cells.select      
      With xlApp.selection
         .font.size = "12"
         .font.name = "Arial"
         .Columns.AutoFit
      End With

Fehlermeldung: "Die Select-Methode des Range Befehls konnte nicht ausgeführt werden"

Das verstehe ich nicht so recht, und die Excel-Hilfe habe ich leider noch nciht installiert, muss mir erst die Cd von meinem Vater wieder besorgen und das nachholen :(


mfg

Sebastian
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: Semeaphoros am 04.01.05 - 20:42:43
Ja, da hättest Du die Excel-Hilfe unbednigt früher installieren sollen, die wäre jetzt hier unbedingt gefragt. 

Und wie Du irgend etwas erreichen kannst in Excel, kannst Du relativ einfach selber feststellen: Schalte in Excel den Makrorecorder an, führe die gewünschte Aktion durch, schalte den Recorder wieder ab und schau Dir das aufgezeichnete Makro an.
Titel: Re: Frage zu Excel-Export via NotesScript
Beitrag von: Catrex am 05.01.05 - 01:56:49
Ja danke. Hat mittlerweile schon geklappt und der Export läuft wie ich mir das erhofft habe. Also nochmal danke !

mfg

Sebastian ! ! !