Как обновить таблицу в автокаде

Обновлено: 08.07.2024

Таблица - в файле, вопрос - в названии темы. Сей глюк коснулся только моего автокада или он живет в файле?

__________________
. Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

Сами собой не обновляются. Нужно _Updatefield или _Regen.
PS файл не качал

__________________
* Буква "ё" не используется в тексте исключительно в связи с требованиями ЕСКД.

Сами собой не обновляются. Нужно _Updatefield или _Regen.
PS файл не качал

А ты скачай.. Ежели б все было так просто, то и вопросов бы не было.. ни _Updatefield, ни _Regen, ни save поля не обновляют. Обновляются только при заходе в редакторование поля. Может, конечно, это глюк только моей машины или автокада..

__________________
. Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

AlexV, попробуй файл очистить от следов СПДС GraphiCS и AutoCAD Architecture.

__________________

---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

AlexV, попробуй файл очистить от следов СПДС GraphiCS и AutoCAD Architecture.

Я, вобщем, так и думал, что виноваты надстройки какие-либо.. AA быть не должно, Project Studio да SPDS. PS объекты убиты, файл почищен explodeproxy ривилисовским. А вот СПДС постоянно используется, убивать его объекты не хотелось бы.. Неужто совместное использование и СПДС, и полей невозможно?

__________________
. Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

Я попробовал открыть файл (AutoCAD 2012 Rus), но в самой таблице увидел черт-те что.

В самой таблице наблюдаю то, что на 001.jpg. При этом входя в редактирование ячейки, я вижу 002.jpg. И, если честно, я не очень понимаю, что и как должно обновляться. И как вообще добились такого поведения ячейки

Я попробовал открыть файл (AutoCAD 2012 Rus), но в самой таблице увидел черт-те что.
В самой таблице наблюдаю то, что на 001.jpg. При этом входя в редактирование ячейки, я вижу 002.jpg. И, если честно, я не очень понимаю, что и как должно обновляться. И как вообще добились такого поведения ячейки

Элементарно, Ватсон! Ячейка с типом данных "целое число", вставляем поле "Объект" -"Формула" - "=1000", в "Дополнительный формат" - "Суффикс" "%%c10 А400 ГОСТ 5781-82 l=". Ячейка выглядит как текст, но ссылки на нее можно испольлзовать как число, - в расчете массы единицы (в соответствующей ячейке поле "round(C6/1000*0.617*100)/100", которое должно пересчитываться при изменении длины). Ну и простейшее поле в столбце "Примечание" "=D6*E6", - даже оно не пересчитывается при изменении значений кол-ва и массы.

__________________
. Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

В экселе создана таблица. Настроена связь с данными в каде с этой таблице. В автокаде вставлена таблица на основе связи с таблицей Excel.
Если я перемещаю таблицу Excel в другое место, связь нарушается. Снова настраиваю связь с уже перемещенной таблицей, но сама таблица в каде не изменяет связь (она ссылается на первоначальное местоположение экселевского файла).

Можно ли каким-нибудь образом обновить связь в самой таблице? Удалять и создавать новую я не могу, т.к. таблице в каде привязано много полей.

И заодно ещё один вопрос - можно ли у уже созданной таблицы в каде изменить связь. Т.е. я создал таблицу, скопировал её, и нужно задать ей другую связь.

Последний раз редактировалось Yur.OK_SPb, 30.07.2011 в 16:07 .
Если я перемещаю таблицу Excel в другое место, связь нарушается.
Правильно, если пути назначались абсолютные, то так и будет. Чтобы пути не терялись нужно при создании линка задавать относительные пути и за пределы корневого каталога не перемещаться.
Снова настраиваю связь с уже перемещенной таблицей, .
Можно ли каким-нибудь образом обновить связь в самой таблице?
. вообще можно, но в данном случае никому не известно что у вас там.
Выложите пример, расскажите подробнее что вы хотите получить в итоге? какова задача? . вообще можно, но в данном случае никому не известно что у вас там.
Выложите пример, расскажите подробнее что вы хотите получить в итоге? какова задача?

Вот пример. Объясняю.
На чертеже имеется 3 таблицы.
Левая связана с листом "выемка" в документе "123.xlsx". При помощи полей вынесены отметки из этой таблицы в виде "проект/факт" для левой, осевой и правой точек.
Средняя таблица - это полная копия левой таблицы с полями-отметками. Соответственно она тоже связана с листом "выемка" в документе "123.xlsx"
Правая таблица - это лист "насыпь" из документа "123.xlsx". Нужно к нему быстро привязать поля, как и в первой таблице, но в ручную это делать очень муторно (т.е. выбирать поле, формула, ячейка для каждой из ячеек таблицы). Поэтому я и хочу у средней таблицы изменить связь с выемки на насыпь, и поля у средней таблицы сами поменяться.

Мне нужно выносить отметки с 20-40 поперечников автомобильной дороги на её плановое положение. При этом отметки есть в табличном виде, как в примере. После проведенных операций мне будет достаточно перетянуть поле "проект/факт" на нужное место на чертеже, а не вручную забивать все эти числа. Надеюсь, что понятно объяснил.

P.S. Я на данный момент нашел только один способ изменить связь у таблицы:
применительно к моему примеру - нужно зайти в среднюю таблицу, выделить ячейку А1, зайти в свойства таблицы, закладка "ячейка", и в самой нижней строке в пункте "связь с данными ячейками" можно изменить связь с "выемка" на "насыпь". При этом данные выемки отодвинутся ниже и правее, станут несвязными (нужно удалять лишние строки и столбцы). Но нужные ячейки будут ссылаться на "насыпь", поля работают исправно.

Последний раз редактировалось Yur.OK_SPb, 30.07.2011 в 20:09 .

Вот теперь понятно, т.е.:
1. Автоматически вставлять в чертёж данные из excel в виде отдельных полей
2. Автоматически менять источник этим полям

Готовых автоматических способов не нашёл, скорее всего их просто нет.
Однако можно попробовать сделать это полуавтоматически, связав поле с ячейкой Excel напрямую, без манипуляций с DWG таблицей, указав в качестве источника Базу данных AD. В этом случае смена источника (ячейки) происходит в 2-3 клика.
Во-вторых, источники полям одновременно можно поменять если они сгруппированы как-то, например в таблицу, а россыпью никак!
Если поля будут располагаться как в примере, то тогда почему бы их не сделать в виде таблицы?
Тогда но проблем!) )

На запрос таблицы укажите ту таблицу значения которой необходимо получить в полях, на запрос объектов выберите поля.Вызов (test) в комстроку со скобками.

Вот теперь понятно, т.е.:
1. Автоматически вставлять в чертёж данные из excel в виде отдельных полей
2. Автоматически менять источник этим полям

Готовых автоматических способов не нашёл, скорее всего их просто нет.
Однако можно попробовать сделать это полуавтоматически, связав поле с ячейкой Excel напрямую, без манипуляций с DWG таблицей, указав в качестве источника Базу данных AD. В этом случае смена источника (ячейки) происходит в 2-3 клика.
Во-вторых, источники полям одновременно можно поменять если они сгруппированы как-то, например в таблицу, а россыпью никак!
Если поля будут располагаться как в примере, то тогда почему бы их не сделать в виде таблицы?
Тогда но проблем!) )

А можете что-нибудь в качестве примера набросать? Мне не совсем понятно, как поля связывать с таблицами Эксель напрямую.

Блииин, создал я 210 полей, которые ссылаются на ячейки таблицы размером 6*35, их копирование и изменение связи на другую таблицу приводит к зависанию автокада. Что делать? Что служит тормозящим фактором? Если просто создавать таблицу - то все довольно быстро. Но вот изменение связи фатально.
Может ли это быть от того, что файлы лежат в сети? Какие пункты выбирать при создании связи в пунктах "содержимое ячеек и форматирование ячеек"?

При вставке AutoCAD позволяет таблицу превратить в таблицу Автокада или оставить ее внедренным OLE-объектом.


Если связь между исходной и вставленной таблицами не нужна, то можно воспользоваться обычным буфером обмена Windows. Если связь нужна, то нужно использовать инструмент создания связей данных, описанный здесь.
  • Открываем таблицу в Excel и копируем необходимую таблицу либо ее часть (например, нажимаем Ctrl+C)


  • Если нам не нужно преобразовывать таблицу во внутренний формат Автокада, то переходим в AutoCAD и делаем вставку из буфера (например, нажимаем Ctrl+V)


Получаем таблицу как OLE-объект, которую нельзя редактировать средствами Автокада.
  • Для того, чтобы преобразовать содержимое буфера обмена в таблицу AutoCAD на ленте Главная выбираем команду Специальная вставка либо вводим команду ВСТСПЕЦ / _PASTESPEC


  • В появившемся окне выбираем Вставить Объекты AutoCAD



Теперь можем её редактировать как угодно, менять формат, содержание и пр. Обратите внимание, что имеющиеся в таблице Excel формулы перенеслись и в таблицу AutoCAD (в примере поля серого цвета).

С остальными приёмами работы в системе AutoCAD можно ознакомиться здесь.

С уважением, Андрей.

8 комментариев:

Отличный совет! Спасибо огромное! только подскажите вот, как теперь быть. После вставки таблицы таким образом текст внутри ячеек остается черным (цвет 0,0,0)и как бы его изменить теперь во всех ячейках одновременно? Подскажите пожалуйста!


Я нашел решение этой проблемы,если копировать с Exel в режиме "Защищенный просмотр" тогда оно вставляет в в цвете "по слою".

Поговорим сегодня о таблицах в AutoCAD, а точнее о их связи с электронными таблицами Excel.


В AutoCAD можно вставить существующую таблицу Excel, при этом сохраняется двусторонняя связь между программами. Если изменить исходную Excel-таблицу, то изменится и связанная с ней таблица в AutoCAD, аналогично при изменении таблицы в AutoCAD поменяется и исходная. Связь поддерживается на уровне данных и форматирования таблиц. Рассмотрим основные моменты работы на примере создания перечня элементов.

Задача: есть таблица с перечнем элементов, созданная в Excel


Необходимо импортировать эту таблицу в AutoCAD так, чтобы сохранилась двухсторонняя связь между ними.

Создание связи с данными и вставка таблицы

1. Запускаем в AutoCAD команду Таблица . В диалоговом окне выбираем пункт На основе связи с данными . В выпадающем списке еще нет никаких связей, мы создадим новую, выбрав соответствующий пункт меню или нажав кнопку рядом



2. В окне Выбор связи данных создаем новую связь с данными Excel



4. Выбираем файл с перечнем элементов. Для многостраничных таблиц нужно указать необходимый лист с данными, выбрать опцию Связь со всем листом или с диапазоном . После введения всех данных будет доступен предварительный просмотр таблицы



5. Теперь в окне Выбор связи данных выбираем нашу созданную связь и вставляем таблицу в чертеж




6. После создания связи с таблицей в правой части строк состояния появляется символ связи и в виде цепочки


При таком способе создания таблиц на основе данных из таблицы Excel мы получаем не только облегчение рутинной работы, но и возможность всегда пользоваться актуальным данными за счет двусторонней связи между программами.

Использование двусторонней связи

Чтобы изменить блокировку необходимо из контекстного меню таблицы выбрать меню Блокирование, где доступно четыре опции:
  • Разблокирование - снятие всех блокировок с таблицы (при этом связь с Excel сохраняется)
  • Содержимое заблокировано - блокировка содержимого таблицы, но не ее формата
  • Формат заблокирован - запрет изменения формата, но возможность редактирования данных таблицы
  • Содержимое и формат заблокированы - полная блокировка таблицы (этот параметр установлен по умолчанию для всех вновь созданных таблиц)


Проще говоря, заблокировав содержимое мы сможем брать данные из любой таблицы Excel и оформлять ее в AutoCAD так, как нам нужно. При этом данные всегда будут актуальны. На нашем примере - перечень элементов создан путем экспорта в Excel из EDA-приложения, вставлен в AutoCAD с разблокированным форматированием и оформлен по ЕСКД средствами AutoCAD.


  • Загрузить изменения из исходного файла
  • Выгрузить пользовательские изменения в исходный файл - позволяет выгрузить изменения таблицы, сделанные в AutoCAD в исходный Excel-файл (опять же, можно связать как содержимое, так и формат). ВАЖНО! Перед выгрузкой данных убедитесь, что файл с таблицей Excel закрыт!
  • Редактирования связи с данными - запускает окно изменений связи с Excel
  • Открыть файл связей с данными (не очень удачный перевод на русский язык) - открывает исходную таблицу Excel
  • Разорвать связь с данными - удаляет связь - таблицы становятся независимыми.

Заключение:

  1. Любую таблицу Excel можно вставить в чертеж AutoCAD. При этом можно вставить как весь лист таблицы, так и его конкретную часть. Можно создать множество таблиц AutoCAD на основе одного файла Excel
  2. Вставленная таблица имеет двустороннюю связь с исходным Excel-файлом. Связь поддерживается на уровне данных и уровне форматов. Можно включать/отключать каждый тип связи для каждой таблицы - это дает огромные возможности для совместной работы проектировщиков, сметчиков, плановых служб и пр., когда все всегда пользуются актуальными данными
  3. Благодаря возможности блокировки/разблокировки связи формата можно брать за основу любую таблицу Excel и оформлять ее в AutoCAD стандартными средтвами
  4. При двусторонней связи всегда есть опасность одновременного внесения изменений, поэтому грамотная организация этого процесса очень важна
  5. Связь между таблицами можно разорвать.

С уважением, Андрей


Если вы получили ответ на свой вопрос и хотите поддержать проект материально - внизу страницы для этого есть специальная форма.

55 комментариев:


Андрей, немного не основную тему. но как сохранить форматирование ячейки при удалении содержимого ячейки?
Пользуюсь в автокаде только таблицами, даже доверяю им несложные расчеты, но вот удаление форматирования никак не поборю.


Действительно, формат исчезает если удалить содержимое, даже если форматирование заблокировано. Даже не знал о такой особенности. Что могу пока сходу посоветовать - не удалять содержимое, а вставлять пробел. Тогда внешне и ячейка пустая и формат не слетает. Попробовал - получается. Но все же попробую найти правильное решение, если оно есть.


подумал тут, что если в ячейку вбивать пробел, то если она участвует в расчетах, то будет error. В таком случае надо 0 вставлять. Перелопатил справку, пока про удаление форматирования ничего не нашел, похоже, что это баг в программе

в правом нижнем углу - указатель на развертывание. а дальше все понятно)


Павел, согласен с Вами, но это относится к таблицам, импортированным из Excel. Пользователь gip.14.08 же спрашивает об обычных таблицах AutoCAD.

Проблема исчезает, если форматирование ячейки настраивать не в самой таблице а Стилях таблиц. И далее стиль ячейки сменить с "по строке/столбцу" на тот стиль, который вы отредактировали как полагается. Более подробную информацию см. мой ответ на вопрос Вероники Кузнецовой ниже. Корень ее проблемы такой же))))


Да, приходилось вставлять ноль и назначать его цвет под цвет фона, что бы ячейка казалась пустой.
Я с похожим вопросом обращался к разработчикам еще при 2010 автокаде. Но, за давностью лет, не помню точно, что они ответили. Что-то типа: " мы над этим работаем ".
Для меня было бы удобно, если бы при удалении содержимого ячейки или группы ячеек, форматирование оставалось при нажатых клавишах Del+(Ctrl или Alt).


Да, похоже ничего не поменялось с тех пор :( Тем не менее проблема меня заинтересовала, поищу еще решение

Андрей, добрый день.
Удалось найти решение?

Здравствуйте, Андрей! Подскажите, пожалуйста, как сделать так, что бы AutoCad чертил по данным таблицы, вставленной из Excel?


Боюсь стандартными средствами AutoCAD это невозможно. Можно написать программу на Lisp, которая будет считывать данные из таблиц и что-то по ним строить

Спасибо, Андрей. Не подскажите, где можно подробнее почитать о Lisp?


Самый лучший способ изучить LISP - это прочитать эту книгу "САПР на базе AutoCAD: как это делается" (С.А.Зуев, Н.Н.Полещук, при участии П.Лоскутова). В интернете куча сайтов, но качество контролировать невозможно.

Спасибо Вам, Андрей)


Вера, не за что! Главное, чтобы во благо.

Добрый день, Андрей.
подскажите, как сохранить форматирование таблицы в автокаде, при обновлении данных из экселя? напрочь сбивается все оформление по ЕСКД


Вероника, к сожалению, сейчас нет такой возможности. Форматирование "слетает" при любых настройках и условиях. В 2014 версии та же история.

очень жаль, а то было бы идеально))

Проблема решается следующим образом. В меню редактирования ячейки (не содержимого ячейки, а самой) есть такое свойство - стили ячеек. Там всегда по умолчанию стоит "по строке/столбцу". Это типа по умолчанию, потому при обновлении с экселя автокад возвращает это форматирование (оно было при вставке связи). Чтобы избежать этого для каждой ячейки надо задать свой стиль (например, выбрать из 3-х преложенных: Данные, Заголовок, Название). Но чтобы выбранный вами стиль соответствовал ЕСКД, сначала его необходимо отредактировать (настроить размер текста, его стиль, выравнивание) в меню Стили Таблиц. Далее присвоить таблице отредактированный стиль и в соответственном меню выбрать необходимый стиль ячеек.
P.S. Всегда для своих целей создавайте новые стили (таблиц, текста, мультивыноски, размеров) а не редактируйте стиль "Standart". Иначе при открытии на других компьютерах, автокад будет использовать не ваши настройки этого стиля, а настройки по умолчанию, и все ваши труды на смарку - получится каша)))


Спасибо за комментарий!

Алексей, Андрей, подскажите пожалуйста:
а если мне нужно, чтоб один столбец данных имел выравнивание по центру,
другой- влево? Если я использую стиль данные, он будет один для всех столбцов.
Спасибо заранее.


Стиль применяется для всех столбцов одновременно

при экспорте таблицы из автокад 2013(пользуюсь встроенными таблицами с ячейками и т.д. аналого экселя) вместо диаметра в экселе перед числом %%C, тоже самое с градусами и степенями, это возможно как то пофиксить? я в принципе пишу дм, град, и м.кв. но хотелось бы именно символы если это возможно =)
Заранее спасибо


Добрый день! Символы экспортируются так как Вы описали, т.к. это внутренние коды AutoCAD и Excel их естественно не понимает. Побороть нельзя, к сожалению. Используйте символы из шрифтов TTF, тогда все отлично передается

Читайте также: