40
92
52
后起之秀
使用道具 举报
1
1069
1050
初露锋芒
(vl-load-com);; local defuns(defun get_table_content (atable / col cols data datum hastile row rows start tmp ) (setq cols (vla-get-columns atable)rows (vla-get-rows atable)start rows ) (if (eq :vlax-true (vla-get-titlesuppressed atable)) (progn (setq rows (1- rows)) (setq hastile T) (setq hastile nil) ) ) (if (eq :vlax-true (vla-get-headersuppressed atable)) (setq rows (1- rows)) ) (setq row (- start rows)) (repeat rows (setq col 0) (repeat cols (setq datum (vla-gettext atable row col)) (setq tmp (cons datum tmp)) (setq col (1+ col)) ) (setq data (cons (reverse tmp) data) tmp nil row (1+ row) ) ) (setq data (reverse data)) (if hastile (setq data (append (list (caar data) (cdr data)))) ) data)(defun merge_first_row (xlsht columns / adr rng) (setq adr (strcat "A1:" (chr (+ 65 (1- columns))) "1")) (setq rng (vlax-get-property xlsht 'Range adr)) (vlax-put-property rng 'HorizontalAlignment (vlax-make-variant -4108 vlax-vbinteger) ) ;1 (vlax-put-property rng 'VerticalAlignment (vlax-make-variant -4107 vlax-vbinteger) ) ;2 (vlax-put-property rng 'WrapText (vlax-make-variant -1 11)) ;3 (vlax-put-property rng 'Orientation (vlax-make-variant -4128 vlax-vbinteger) ) ;4 (vlax-put-property rng 'AddIndent (vlax-make-variant -1 11)) ;5 (vlax-put-property rng 'IndentLevel (vlax-make-variant 0 vlax-vbinteger) ) ;6 (vlax-put-property rng 'ShrinkToFit (vlax-make-variant -1 11) ) ;7 (vl-catch-all-apply (function (lambda () (vlax-put-property rng 'MergeCells (vlax-make-variant -1 11) ) ) ) ) ;8 (vlax-put-property rng 'ReadingOrder (vlax-make-variant -5002 vlax-vbinteger) ) ;9 (vlax-invoke rng 'Merge) (vlax-release-object rng) (setq rng nil))(defun draw-grid (xlapp xlsht / a bords cnt rng sel) (setq rng (vlax-get-property xlsht 'UsedRange)) (vlax-invoke-method rng 'Select) (setq sel (vlax-get-property xlapp 'Selection)) (setq bords (vlax-get-property sel "Borders")) ;; iterate through all edges of selection (setq cnt 0) (vlax-for a bords (setq cnt (1+ cnt)) (vl-catch-all-apply (function (lambda () (progn (if (< cnt 5) (progn (vlax-put-property a "LineStyle" (vlax-make-variant 1 3) ) (vlax-put-property a "Weight" (vlax-make-variant 4 3) ) (vlax-put-property