获取EXCEL选中单元格的数据,现在的码只能获取连续的单元格
[*]目前代码可以获取如下图片中的,选中不连续的获取不到下方的数据,请各路大神,代码怎么改写可以获取所选的所有数据
[*]
[*](defun e2c_list(flag / Selection UsedRange flage sht)
[*](defun E-Get-Range-Value(range / a arr)
[*] (if(and range
[*]
[*] (setq arr (vlax-get-property range "value" nil ))
[*] )
[*] (progn
[*] (if (< 8000 (vlax-variant-type arr))
[*] (progn
[*] (setq a(vlax-safearray->list(vlax-variant-value arr)))
[*] (mapcar '(lambda(x)(mapcar 'vlax-variant-value x))a)
[*] )
[*] (progn
[*] (vlax-variant-value arr)
[*] )
[*] )
[*] )
[*] )
[*])
[*](setq e(vlax-get-object "Excel.Application"))
[*](setq sht(vlax-get-property e "ActiveSheet"))
[*](Setq Selection (vlax-get-property e (quote Selection) ))
[*](setq UsedRange(vlax-get-property sht "UsedRange"))
[*](cond ((= flag "0")(setq lst(E-Get-Range-Value UsedRange)));用过的单元格全部数据
[*] ((= flag "1")(setq lst(E-Get-Range-Value Selection))));选中的单元格全部数据(只能选连续的)
[*]lst
[*]
[*])
本帖最后由 自贡黄明儒 于 2024-3-5 15:55 编辑
用户选定的单元格
(setq **Excel** (vlax-get-or-create-object "excel.application"))
(setq Selection (vlax-get-property *excel* 'Selection)
Cells (vlax-get-property Selection 'Cells)
)
自贡黄明儒 发表于 2024-3-5 15:53
用户选定的单元格
(setq **Excel** (vlax-get-or-create-object "excel.application"))
(setq Selection ...
用这个代码得到#<VLA-OBJECT Range 00000215b39ddc18>,这种怎么获取单元格的数据 自贡黄明儒 发表于 2024-3-5 15:53
用户选定的单元格
(setq **Excel** (vlax-get-or-create-object "excel.application"))
(setq Selection ...
我用之前的方法还是只能得到前面的数据,后面的获取不到 ;;功能:载入工作表指定区域数据为 VisualLisp 数组
;;参数:ss 路径及文件名; n 工作表的下标或名称; usg 指定的数据区域
;;返回:VL数组
;;示例:(Get_Sheet_arry "d:\\cpp\\data.xlsx" 1 "a2:e2000")
;;VisualLisp 数组用法,查找第 2 行,第 3 列数据,转 lisp 表用 mapcar
;;(vlax-variant-value(vlax-safearray-get-element arr 2 3))
(defun Get_Sheet_arry(ss n usg / vg ws sht)
(setq excel (vlax-get-or-create-object "excel.application")
vg vlax-get-property ws (vg excel 'Workbooks)
sht(vg (vg (vlax-invoke ws 'Open ss) 'Worksheets) 'item n)
arr (vlax-variant-value (vg (vg sht 'Range usg) 'Formula)))
(vlax-invoke ws 'close) arr
)
原文链接:https://blog.csdn.net/yxp_xa/article/details/80910654 上传有问题的excel文件,是不是所有文件都是这个问题?另存为或者复制到新的文件行不行? liuhe 发表于 2024-3-5 16:13
上传有问题的excel文件,是不是所有文件都是这个问题?另存为或者复制到新的文件行不行?
这个跟EXCEL没关系吧 uualice2020 发表于 2024-3-5 16:21
这个跟EXCEL没关系吧
有的excel文件 有bug
页:
[1]