cnsdjnzc 发表于 2011-10-31 10:45:03

在运行程序时会出现错误: Automation 错误。未提供说明。

(defun c:xl-test2()
(vl-load-com)
(setq exlib "C:Program files\\Microsoft office\\Office11\\Excel.exe")
(if (null MX-acos)
    (vlax-import-type-library
         :tlb-filename         exlib
    :methods-prefix       "MX-"
    :properties-prefix    "MX-"
   
    :constants-prefix   "MX-"
   )
)
(setq XLobj (vlax-create-object "Excel.Application"))
(vla-put-visible XLobj 1) ;;或 (vla-put-visible XLobj :vlax-true)
(setq filename "F:\\2.xls")
(vlax-Invoke-Method (vlax-Get-Property XLobj 'Workbooks) 'Open filename)
(setq sheetobj(MX-get-activesheet XLobj))
(setq list_all_data(get-xl-data sheetobj))
(princ)
)
(defun GET-XL-CELL-value (wkst row col)
(vlax-variant-value (MX-get-value(vlax-Variant-Value
(MX-Get-Item (MX-Get-Cells wkst) row col)
)))
)
(defun GET-XL-CELL (wkst row col)
(vlax-Variant-Value
(MX-Get-Item (MX-Get-Cells wkst) row col)
)
)
(defun get-xl-data(stobj)
(setq list-all-data nil)
(setq row 2 col 1)
(while (get-xl-cell stobj row 1)
   (setq lista nil)
   (while (get-xl-cell stobj row col)
   (setq value (get-xl-cell stobj row col))
   (if (= (type value) 'real)
   (setq value (rtos value 2 0))
   )
   (setq lista (cons value lista));cons 基本的表构造函数
   (setq col (1+ col))
)
(setq list_all_data (append list_all_data (list (reverse lista))));reverse 1st 颠倒表中元素的顺序,然后返回修改后的表
;append 按任意数目的表合成一个表
(setq row (1+ row) col 1)
)
list_all_data
)
(defun jinn-Excel-Quit ()
   (vlax-invoke-method XLobj 'QUIT)
   (vlax-release-object XLobj)
   (setq XLobj nil)
)
大家好,还要再次麻烦大家,这个程序运行过程中会出现错误: Automation 错误。未提供说明。麻烦大家帮我分析一下是什么原因造成的,怎么修改程序部分?谢谢了!   

cnsdjnzc 发表于 2011-10-31 11:20:32

问题已解决,谢谢了

cnsdjnzc 发表于 2011-10-31 11:22:35

那个问题已解决,只是那个excel的数据读不出来,麻烦大家帮我看看是什么原因?谢谢了

zlzxtfl 发表于 2016-6-11 01:14:08

是什么原因呢,说明下,,我也碰到了此情况
页: [1]
查看完整版本: 在运行程序时会出现错误: Automation 错误。未提供说明。