Lisp HUG Maillist Archive

Re: using COM to talk to Excel




OK, I found out how to do what I want to do:

(defsystem LW-XL
    (:default-pathname "c:\\Program Files\\Microsoft Office\\Office10\\")
  :members (("XL5EN32.OLB" :type :midl-type-library-file)))
(compile-system 'lw-xl :load t)
(com:co-initialize)
(setq app (com:create-instance "Excel.Application" :riid 'com:i-dispatch))
;gives the _application interface
(setq workbooks (com:simple-dispatch-get-property app "Workbooks"))
(setq workbook (com:simple-dispatch-get-property workbooks "Open"
"foo.xls") ;existing spreadsheet to open
(setq sheets (com:simple-dispatch-get-property workbook "Sheets")
(setq sheet (com:simple-dispatch-get-property workbook "ActiveSheet"))

and so on...


Updated at: 2020-12-10 08:58 UTC