Electric,
Выложи dwg-файл с одной такой таблицей и укажи версию AutoCAD.
возможно ли писать на AutoLISP в AutoCAD без применения ActiveX?Возможно, но очень геморройно - особенно касаемо таблиц. Там в DXF кодах запутаться проще простого, мне кажется.
По-моему, лиспом подобное невозможно сделать. Мало того, даже если разбить ячейки, вторая и далее строки опознаются неверно.
Я бы скорее всего забил на попытки опознания и делал обработку начиная с 4 строки.
А каким манером определяется, что выполнено объединение именно с первой строкой? Мне реально интересно.
Если объединить ячейки данных по вертикали - код корректно сработает?
VBA:
RetVal = object.IsMergedCell(row, col, minRow, maxRow, minCol, maxCol)object
Type: Table
The object this method applies to.
row
Access: Input-only
Type: Long
The row number.
col
Access: Input-only
Type: Long
The column number.
minRow
Access: Input-only
Type: Long
Zero-based lower bound of a row index.
maxRow
Access: Input-only
Type: Long
Zero-based upper bound of a row index.
minCol
Access: Input-only
Type: Long
Zero-based lower bound of a column index.
maxCol
Access: Input-only
Type: Long
Zero-based upper bound of a column index.
Возможно, но я ориентируюсь на документацию:Интересно, что в более старой документации про Input-only для последних четырех аргументов ничего не сказано. Зато как всегда помогает первоисточник, т.е. файл acadi.h в ObjectARX SDK:
Александр, для этого надо знать где искать и уметь читать код на великом и ужасном С++ :) Что с первым, что со вторым у меня напряг ;)Вот тебе еще и на C#:
Алексей Кулик,
А тебе не кажется, что ты неправильно используешь (vla-ismergedcell) ?
Эта функция для ячейки таблицы кроме признака объединенная/необъединенная возвращает еще и minRow, maxRow, minCol, maxCol для области объединения:Код - Auto/Visual Lisp [Выбрать]
(vla-ismergedcell table row col 'minRow 'maxRow 'minCol 'maxCol)
ошибка: ActiveX Server возвратил ошибку: Параметр является обязательным
Electric,
Надеюсь, что у тебя table - это объект таблицы, row и col - это целые числа (строка и столбец).