Как удалить связь с данными в автокаде
Разрыв ТОЛЬКО ошибочных связей в excel
Добрый день форумчане! Нужна ваша помощь. Есть много файлов. В них есть ссылки-привязки связей на.
Чтение текста сразу из всех полей Edit сразу
Всем привет. У меня на форме есть 6 текстовых полей. Вот файл .h class TForm1 : public TForm <.
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| У меня при удалении пропадает кнопна ОК. |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| mr.beginner |
| Посмотреть профиль |
| Найти ещё сообщения от mr.beginner |
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| У меня при удалении пропадает кнопна ОК. |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| mr.beginner |
| Посмотреть профиль |
| Найти ещё сообщения от mr.beginner |
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
AutoCAD: Связь с внешними данными
Часто пользователи хотят связать объекты чертежа с внешними данными – Таблицей Excel, базой данных или просто с текстовым или xml файлом. Конечно, в AutoCAD существует множество способов взаимодействия с внешними данными: _DataLink, dbConnect, attin, _script. Но все эти инструменты требуют «много кликов» и не обеспечивают нужного взаимодействия. Пользователю хочется, что бы объекты чертежа автоматически приводились в соответствие с внешними данными, с минимальным его участием. Образцовым примером подобного взаимодействия является FDO в AutoCAD Map 3D – когда после подключения к источнику мы сразу получаем его содержание в виде графики (и при желании даже с подписями) и для синхронизации с источником, достаточно выполнить обновление слоя (одна команда). Но это специальный (а значит ограниченный) ГИС инструмент, который подойдет не всем. И тогда остаётся лишь применить программирование, благо существует огромное количество способов это сделать – Lisp, C++, .Net, Delphi, Python и т. д.
Одним из способов, установить такую связь с источником данных – создать класс, который будет отвечать за связь с данными или просто агрегировать эти данные для импорта/экспорта. В данной статье я покажу пример подобного класса, который:
- Сам себя рисует (но не Custom object*)
- Имеет собственные данные и следит за их актуальностью
- Умеет импортировать/экспортировать себя в XML
В AutoCAD’е у программиста есть несколько инструментов для хранения собственных данных в чертеже, это – XData и XRecord. Но это весьма ограниченные инструменты и доступ к этим данным имеется только из AutoCAD. Поэтому мы будем использовать внешний источник данных, а связывать их с примитивами в чертеже, через Handle.
Наш объект будет рисовать круг, а также текстовую метку содержащую радиус этого круга, но данный метод позволяет создавать любые примитивы (на пример Solid3d или NurbSurface) – лишь бы у них был Handle. Нам понадобятся методы для отрисовки Объекта и Метки. Но самое главное нам понадобится метод для отслеживания изменения объекта, обработчик события, который мы повесим на событие Modified. Также нам понадобятся методы для обновления примитивов и экспорта в XML. Ну хватит, меньше слов — больше кода.
Не забыли подключить cmgd.dll, acdbmgd.dll, accoremgd.dll (AcAd >= 2013)?
Собственные данные объекта, да это свойства примитива, но это же пример.
Ссылки на примитивы чертежа.
Рисуем сам объект, а заодно запоминаем ссылку на примитив и главное — вешаем обработчик на изменение объекта.
Обрабатываем изменение объекта — получаем новые знаения свойств объекта, обнавляем Метку.
Рисуем Метку объекта.
Импорт/экспорт в XML.
Ну конечно, нам понадобятся команды в AutoCAD’е, для работы с нашим классом.
Как удалить связь с данными в автокаде
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| У меня при удалении пропадает кнопна ОК. |
| VoVoRoNaLe |
| Посмотреть профиль |
| Найти ещё сообщения от VoVoRoNaLe |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| Sneginka_Clan |
| Посмотреть профиль |
| Найти ещё сообщения от Sneginka_Clan |
| mr.beginner |
| Посмотреть профиль |
| Найти ещё сообщения от mr.beginner |
1. Select the table ->right-click -> Click Data Links -> Detach Data Link.
Как вставить таблицу Excel в AutoCAD и настроить связь данных

Очевидно, что работать с таблицами удобнее в Excel, а вот оформление (основная надпись — штамп и рамка) лучше делать в AutoCAD. Сегодня расскажу, как вставить таблицу Excel в AutoCAD, как связать эти два файла так, чтобы при изменении данных в Excel, в AutoCAD автоматически всё обновлялось. А главное, покажу настройки, с которыми AutoCAD не тормозит при обновлении данных.
Чтобы информация была максимально полезной и понятной, буду делать на примере спецификации. Аналогичным образом можно сделать связь для кабельного журнала.
Шаг 1. Заполняем таблицу в Excel
Для начала скачайте файлы шаблонов спецификации по ГОСТ и заполните таблицу в Excel. Тут всё как обычно, но есть один очень важный момент: в первом столбике Поз. не должно быть пустых ячеек. Иначе дальше не сработает.

Спецификация в Excel
Шаг 2. Умные формулы в Excel
Далее на ленте Excel переходим на вкладку Формулы и нажимаем кнопку Диспетчер имён.

Кнопка Диспетчер имён на ленте Excel
Появится окошко. Там уже всё настроено, просто проверьте, что ничего не сломалось. Заодно я объясню, как это работает. Если будете работать со своими таблицами, сможете сделать аналогично.
Header — это диапазон «шапки» нашей таблицы. Там должна быть такая формула:
Спецификация — название листа. $A$1:$D$1 — диапазон данных на листе (шапка таблицы).

Окно диспетчер имён в Excel. Формула для диапазона Header
Data — это диапазон данных, который формируется автоматически.
Там должна быть такая формула:

Окно диспетчер имён в Excel. Формула для диапазона Data
В этой формуле одна функция вложена в другую.
Функция СЧЁТЗ подсчитывает число непустых ячеек в диапазоне (в нашем случае столбик «А»). Как только обнаружится пустая ячейка в столбике «А», то формула считает её концом таблицы. Именно поэтому выше акцентировал внимание на том, что в столбике А не должно быть пропусков ячеек.
Функция СМЕЩ возвращает ссылку на диапазон, смещённый относительно указанной ячейки (диапазона ячеек) на нужное число строк и столбцов. У неё пять аргументов:
- Ссылка — ячейка, от которой нужно отсчитывать. Берём верхнюю левую ячейку с данными таблицы. В нашем случае это ячейка «А2» на листе «Спецификация».
- Смещ_по_строкам. Мы будем отсчитывать от ячейки А2. Поэтому в формуле 0.
- Смещ_по_столбцам. Мы будем отсчитывать от ячейки А2. Поэтому в формуле 0.
- Высота — высота в строках результирующего диапазона (т.е. нашей таблицы). Сюда вставляем формулу СЧЁТЗ, прибавляя ещё единицу. Таким образом, у нас в конце спецификации будут ещё две пустых ячейки, т.к. СЧЁТЗ посчитала ещё и первую строчку — шапку таблицы.
- Ширина — ширина в столбиках результирующего диапазона (т.е. нашей таблицы). Указываем 9, т.к. в нашей спецификации фиксированная ширина — 9 столбиков.
Когда в спецификацию будут добавлены новые строки, то диапазон данных автоматически расширится, т.к. функция СЧЁТЗ посчитает число заполненных ячеек в первом столбике листа и автоматически расширит таблицу. Когда лишние строки из таблицы будут удалены, диапазон данных автоматически уменьшится. В итоге, для передачи в AutoCAD у нас всегда будет таблица необходимого размера.
Кстати, если в каком-то другом случае ширина таблицы тоже может меняться, то в аргумент Ширина прописываем аналогичную формулу СЧЁТЗ, только указывая подсчёт по первой строке: $1:$1.
Шаг 3. Настройка в AutoCAD
Открываем шаблон спецификации в AutoCAD с пустой таблицей.
3.1. Настройка связи для шапки таблицы
Выделяем ячейки шапки таблицы (надо выделить всю строку заголовков). Появляется панель с кнопками редактирования таблицы.

Спецификация в AutoCAD. Настройка связи с Excel. Заголовок таблицы
Нажимаем кнопку «Связь ячейки. » — она вторая справа. Появляется окошко «Выбор связи с данными».

Окно создания связи AutoCAD и Excel
Нажимаем «Создайте новую связь с данными Excel» и вводим название новой связи — Header. Появляется окно настройки связи с данными Excel.
Выбираем наш Excel-файл cо спецификацией. И устанавливаем ниже «Относительный путь». В параметрах связи выбираем из списка нужный лист (в нашем случае единственный лист «Спецификация»), устанавливаем переключатель в положение «Связь с именованным диапазоном» и выбираем из списка диапазон «Header».

Настройка в AutoCAD новой связи с данными в Excel. Настройка диапазона данных
Дальше в правом нижнем углу этого окошка нажимаем на кнопку со стрелкой, чтобы появились настройки форматирования и вносим некоторые изменения:
- В блоке «Содержимое ячеек» устанавливаем переключатель в положение «Сохранить форматы данных, вычислить формулы в Excel».
- Флажок «Разрешить запись в исходный файл» снимаем. Так получится односторонняя связь — изменения вносим только в Excel, а в AutoCAD будет редактирование будет недоступно.
- В блоке «Форматирование ячеек» флажок «Использование форматирования Excel» отключаем, переключатели ниже должны быть неактивны.
Должно получиться как на картинке.

Настройка в AutoCAD новой связи с данными в Excel. Настройка форматирования
Нажимаем кнопку «Ок». Связь для шапки таблицы настроена.
3.2. Настройка связи для данных таблицы
Устанавливаем курсор на первую пустую ячейку в первом столбике, сразу под «шапкой» таблицы.

Спецификация в AutoCAD. Настройка связи с Excel. Данные таблицы
Далее действуем аналогично настройке связи для заголовка таблицы. Нажимаем кнопку «Связь ячейки. ». Создаём новую связь с именем Data, выполняя аналогичные настройки, только выбираем именованный диапазон Data. Настройки форматирования делаем точно такие же, как для заголовка.
Нажимаем Ок. Связь с данными установлена. AutoCAD сразу же загрузит данные из таблицы Excel в таблицу AutoCAD. Остаётся удалить лишние строки, которые были в таблице шаблона. При этом строки, которые охватывает связь с Excel, удалить не получится.

Заполненная спецификация в AutoCAD после настройки связи с Excel
Шаг 4. Обновление данных
При изменении данных в таблице Excel, сразу после сохранения файла, в AutoCAD в правом нижнем углу появится уведомление.

Уведомление в AutoCAD об изменении данных в связанной таблице Excel
Для импорта обновлённых данных из таблицы Excel в AutoCAD просто нажмите на синюю ссылку в уведомлении. AutoCAD импортирует и перезапишет изменённые данные в связанной таблице.