找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 861|回复: 2

[原创] Excel单元格插入批注

[复制链接]
发表于 2021-7-3 10:59:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  1. (defun $excel-dan-yuan-ge-pi-zhu$ (xlapp sh-n address-str-h lst)
  2.           ;Excel单元格插入批注
  3.           ;xlapp excel对象
  4.           ;sh-n 表的名字
  5.           ;address-str-h  三个值:单元格地址、字串、文字大小
  6.           ;lst 预留参数
  7.           ;($excel-dan-yuan-ge-pi-zhu$  xlapp  "Sheet2"(list(list "A1" "中线CAD:\n这个列不能删除,删除后将会带来灾乱性后果")(list "B2" "秦始皇:\n您好呀,我是批注"))nil)
  8.   (defun $set-font-size$ (range h)
  9.     (vl-catch-all-apply
  10.       'vlax-put-property
  11.       (list
  12.   (vl-catch-all-apply
  13.     'vlax-get-property
  14.     (list
  15.       (vl-catch-all-apply
  16.         'vlax-invoke-method
  17.         (list
  18.     (vl-catch-all-apply
  19.       'vlax-get-property
  20.       (list
  21.         (vl-catch-all-apply
  22.           'vlax-get-property
  23.           (list
  24.       (vl-catch-all-apply
  25.         'vlax-get-property
  26.         (list range 'Comment)
  27.       )
  28.       'Shape
  29.           )
  30.         )
  31.         'TextFrame
  32.       )
  33.     )
  34.     'Characters
  35.         )
  36.       )
  37.       'font
  38.     )
  39.   )
  40.   'size
  41.   h        ;文字高度
  42.       )
  43.     )
  44.   )
  45.   (or xlapp (setq xlapp ($xlapp-New$ NIL nil nil)))
  46.   (setq  xlsheet
  47.    (vl-catch-all-apply
  48.      'vlax-get-property
  49.      (list (vl-catch-all-apply
  50.        'vlax-get-property
  51.        (list (vl-catch-all-apply
  52.          'vlax-get-property
  53.          (list xlapp 'activeworkbook)
  54.        )
  55.        'Sheets
  56.        )
  57.      )
  58.      'Item
  59.      sh-n
  60.      )
  61.    )
  62.   )          ;工作表对象
  63.   (setq  zt (mapcar (function (lambda (a / address str h range zt)
  64.              (setq address (car a))
  65.              (setq str (cadr a))
  66.              (setq h (caddr a))
  67.              (or h (setq h 8))
  68.              (if str
  69.          (progn
  70.            (SETQ
  71.              range (vl-catch-all-apply
  72.                'msxlp-get-range
  73.                (list xlsheet address)
  74.              )
  75.            )  ;单元格对象
  76.            (vl-catch-all-apply
  77.              'vlax-invoke-method
  78.              (list range 'ClearComments)
  79.            )  ;删除历史批注  
  80.            (setq zt (vl-catch-all-apply
  81.                 'vlax-invoke-method
  82.                 (list
  83.             range
  84.             'AddComment.Text
  85.             str
  86.                 )
  87.               )
  88.            )  ;添加批注
  89.            ($set-font-size$ range h)
  90.          )
  91.              )
  92.              zt
  93.            )
  94.        )
  95.        address-str-h
  96.      )
  97.   )
  98.   zt
  99. )

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1344个

财富等级: 财源广进

发表于 2021-7-3 16:13:05 | 显示全部楼层
楼主这几天与excel 杠上啦
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6202个

财富等级: 富甲天下

发表于 2021-7-5 08:06:50 | 显示全部楼层
Excel'工具,值得收藏,谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-16 23:19 , Processed in 0.189139 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表