Guter Einwand Mase. Dann bleibt der Fokus bei Excel (bzw. der neuen Instanz) und in Word (oder der alten Instanz) bleibt der Fehler bestehen. Da hilft nur den Doppelklick von vornherein zu verhindern. In Word müsste man dazu einen Verweis auf die Microsoft Excel Objektbibliothek setzen und ein Klassenmodul "Klasse1" hinzufügen. Dort käme dann dieser Code rein.
Public WithEvents Excapp As Excel.Application
Private Sub Excapp_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Excel.Range, Cancel As Boolean)
Cancel = True
End Sub
Anschließend kann man den Anfang des eigentlichen Codes folgt ergänzen:
Dim ExcEvents As New Klasse1
ExtDateipfad = "ein Pfad"
Tabellenname = "Tabelle1"
On Error Resume Next 'Excel neue Instanz aufbauen
Set Excapp = CreateObject("Excel.Application")
Set ExcEvents.Excapp = Excapp
On Error GoTo 0
...
Man hätte dann einen ExcelEvent-Handler im Word, bzw. die Events der neuen Instanz in der alten Instanz definiert. Das ginge also.
Gruß Mr. K.
|