Dialog beim Beenden

Sofern man in seinem OLE-Konstrukt die Methode “Copy” benutzt, erscheint ggfs. beim Beenden von Excel der Dialog “Es befinden sich Daten in der Zwischenablage. Sollen diese für andere Programme erhalten bleiben?”. Dieser Dialog ist natürlich nicht unbedingt erwünscht…

Beim Beenden kann dieser Dialog ausgeschaltet werden.

Hier die komplette Routine, die Excel ohne zu Sichern beendet:

* Excel beenden
*———————————————————————–
* see
http://support.microsoft.com/default.aspx?scid=kb;de;503541
* Close without saving
* get active window
  CALL METHOD OF h_excel ‘ACTIVEWINDOW’ = h_active_window.
* set active_window visible
  SET PROPERTY OF h_active_window ‘VISIBLE’ = 1.

* close active_window without saving
  CALL METHOD OF h_active_window ‘CLOSE’
    EXPORTING #1 = 0.

* disable dialog
  CALL METHOD OF h_excel ‘CutCopyMode’ 
     EXPORTING #1 = 0.

* close Excel
  CALL METHOD OF h_excel ‘QUIT’.
  FREE OBJECT: h_excel, h_active_window.

Enno Wulff

Leave a Comment