Einzelnen Beitrag anzeigen

Ferber

Registriert seit: 9. Mär 2005
Ort: Wien Umgebung
155 Beiträge
 
Delphi 2006 Architect
 
#2

Re: Ecxel / Word Datei Speichern "speicherort übergebe

  Alt 1. Feb 2006, 12:44
Hi !
Ich denke du wirst das von Excel / Word aus (VBA) steuern müssen, indem du auf das Ereignis Close reagierst.
VBACode:
Delphi-Quellcode:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Call MsgBox(ActiveWorkbook.FullName, vbInformation + vbOKOnly)
End Sub
Die Verbindung zu deinem Programm realisierst du mit einem Klassenmodul.

VBACode:
Delphi-Quellcode:
Option Explicit

Private FDataEngine As Object

Private Sub Class_Initialize()
  On Error GoTo error
  If Remote Then
     Set FDataEngine = CreateObject("DataEngine.Engine", RCName)
  Else
     Set FDataEngine = CreateObject("DataEngine.Engine")
  End If
  Exit Sub
error:
  Call MsgBox("Kann ""DataEngine"" nicht starten", vbCritical, "DataEngine")
  Resume Next
End Sub

Private Sub Class_Terminate()
  Set FDataEngine = Nothing
End Sub

Public Function RegisterFilename(aFilename As String) As Boolean
  RegisterFilename= FDataEngine.RegisterFilename(aFilename )
End Function
Deim Prog muss ein ComServer sein (TypeLibrary hinzufügen), die Funktionen (hier RegisterFilename) muss dein Prog
in der TypeLibrary zur Verfügung stellen.

PS: 'Remote' und 'RCName' sind Globale Konstante (in einem anderen VBA Modul definiert), damit ich leichter steuern kann wo meine Serveranwendung gestartet wird.
VBACode:
Delphi-Quellcode:
Public Const Remote = False
Public Const RCName = "Server"
Tja, und jetzt beginnt die Arbeit in Delphi !
Otto
  Mit Zitat antworten Zitat