> Андрей
Вот блин я ж не на том языке состряпал...
даже не посмотрел что форум VBA :)
Ладно все равно пока выкладываю:
(defun change-table-contents (datalist / atable col cols data row rows sset start)
(prompt "\n\t***\tSelect table\t***\n")
(setq sset (ssget "_:S" '((0 . "ACAD_TABLE"))))
(setq atable (vlax-ename->vla-object (ssname sset 0))
cols (vla-get-columns atable)
rows (vla-get-rows atable)
start rows
)
(if (eq :vlax-false (vla-get-titlesuppressed atable))
(setq rows (1- rows))
)
(if (eq :vlax-false (vla-get-headersuppressed atable))
(setq rows (1- rows))
)
(setq row (- start rows))
(repeat rows
(setq col 0)
(setq data (car datalist))
(foreach strvalue data
(vla-settext atable row col strvalue)
(setq col (1+ col))
)
(setq datalist (cdr datalist)
row (1+ row)
)
)
)
; TesT :
(defun C:test ()
(setq somelist '(("a" "b" "c" "d")("e" "f" "g" "h")("i" "j" "k" "l")));и тд и тд..())
(change-table-contens somelist)
(princ)
)
(C:test)
Вставить строки в таблицу можно так:
(vla-insertrows atable {номер 1-й строки} {высота строки} {число строк})
На VBA:
atable.InsertRows {номер 1-й строки}, {высота строки}, {число строк}
~'J'~