Das Notes Forum
Lotus Notes / Domino Sonstiges => OLE/COM-Programmierung => Thema gestartet von: mwue am 20.06.08 - 22:53:17
-
Hallo zusammen,
ich möchte von Lotus Notes aus eine Excel Datei öffnen und dabei etwas in das 2. Tabellenblatt schreiben. Irgendwie klappt das aber mit dem Code unten nicht.
Solange ich das erste Blatt anspreche mit "Set Asheet = handle.Workbooks(1).Worksheets(1)" ist alles ok, spreche ich das zweite an mit "Set Asheet = handle.Workbooks(1).Worksheets(2)", kommt die Fehlermeldung: "Microsoft Excel: Die Select Methode des Range Objektes konnte nicht ausgeführt werden."
Die Vorlagedatei (file), die geöffnet wird, hat 3 Register. Hier der Lotus Script Code.
' Öffnen der Excel Vorlage und Schreiben des Registernamens
Set handle = CreateObject("Excel.Application") '
If Not (handle Is Nothing) Then
handle.Visible = False
handle.Workbooks.Open file ' die Variable file enthält den Dateinamen und Pfad
Set Asheet = handle.Workbooks(1).Worksheets(2) ' select worksheet
If Not (Asheet Is Nothing) Then
Asheet.Name = Blattname2
End If
End If
Asheet.Cells(1,1) = "Projektbezeichnung"
handle.Range(Asheet.Cells(1,1), Asheet.Cells(1,2)).Select ' in dieser Zeile fliegt das Programm raus und die Fehlermeldung kommt.
Was habe ich falsch gemacht ? Ich habe echt keine Idee mehr.
Viele Grüße
Marion
-
Wie es aussieht lässt sich Range nur auf das aktive Tabellenblatt anwenden. mit der fettgedruckten Zeile funktioniert das Ganze.
' Öffnen der Excel Vorlage und Schreiben des Registernamens
Set handle = CreateObject("Excel.Application") '
If Not (handle Is Nothing) Then
handle.Visible = False
handle.Workbooks.Open file ' die Variable file enthält den Dateinamen und Pfad
Set Asheet = handle.Workbooks(1).Worksheets(2) ' select worksheet
If Not (Asheet Is Nothing) Then
Asheet.Name = Blattname2
End If
End If
Call Asheet.Activate
Asheet.Cells(1,1) = "Projektbezeichnung"
handle.Range(Asheet.Cells(1,1), Asheet.Cells(1,2)).Select
Axel
-
Hallo Axel,
klasse, das war ein obergenialer Tipp ! Jetzt funktioniert alles bestens.
Vielen vielen Dank !
Marion
:) :) :)