Здравствуйте, меня зовут Александр Крылов. Уже около девяти лет я активно пользуюсь программой Archicad, а в этой статье хочу рассказать о своих способах организации взаимодействия таких программ, как Archicad и Excel.

Почему для своей работы я выбрал эти программы? Excel давно занял нишу стандартной базовой программы в управленческих фирмах и в компаниях, занимающихся финансами. А из имеющихся на российском рынке программ для BIM-проектирования Archicad лучше всего подходит для концептуального информационного моделирования с последующим быстрым извлечением данных из BIM-модели: даже не имея готового шаблона, на свежеустановленном дистрибутиве можно довольно быстро создать концептуальную модель здания. Кроме того, Archicad обладает дружелюбным и понятным интерфейсом. Я всегда смогу объяснить даже по телефону, куда нужно нажать и что нужно сделать, если вдруг срочно понадобится произвести те или иные действия с проектом. В свою очередь необходимые для большинства рабочих процессов функции программы доступны «из коробки». Например, сохранение таблицы в формат XLSX. Для этого не требуется установка каких-либо дополнительных плагинов или написание специального кода — в отличие от конкурирующих программ для проектирования. А сам экспорт таблицы будет произведен с максимальным сохранением внешнего вида, без потери шрифтов, изображений, ширины столбцов и рамок. Это будет хорошо видно на примерах, которые я приведу ниже.

Пример: простой проект бизнес-центра

В девелопменте, как, впрочем, и в любом строительстве, для принятия серьезных решений на начальной стадии проектирования необходимо прежде всего внимательно изучить и просчитать ТЭПы (технико-экономические показатели) проекта. Поскольку в девелопменте ТЭПы ориентированы на последующее получение фирмой коммерческой выгоды, они могут содержать дополнительные данные, не прописанные в нормах. Для наглядной демонстрации взаимодействия двух программ я подготовил небольшой и простой проект бизнес-центра.

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

В ходе работы проект начинает обрастать всё большим количеством информации. Это один из принципов BIM-проектирования — наполнение проекта информацией. И чтобы не запутаться, следует взять за правило корректно именовать виды, каталоги, слои, пытаться все это систематизировать в карте видов и т.д. А если точнее, то нужно всегда использовать предварительно настроенный шаблон. Я же буду использовать стандартный шаблон проекта Archicad, чтобы показать, как с нуля настраивается связь Archicad и Excel.

Рис. 1 Рис. 1

Я разместил на макете план первого этажа (рис. 1), экспликацию помещений, каталог с площадью этажа, а также специально настроенный каталог с разбивкой помещений на нужные категории. Это «Арендная площадь» и «Другая площадь». Нужные мне категории предварительно создал в соответствующем меню (рис. 2).

Рис. 2

Расчет коэффициента рентабельности этажа

Теперь опишу, для чего я решил разбить всю площадь на две категории. Важным параметром определения экономической эффективности задуманной планировки является так называемый «Коэффициент рентабельности этажа». Его формула выглядит так:

площадь арендных помещений ÷ площадь этажа

Соответственно, общий коэффициент всего здания будет выглядеть как

сумма всех арендных площадей ÷ суммарную площадь всех этажей

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

Давайте немного отвлечемся и вспомним 22-ю версию Archicad, в которой появилось очень важное и долгожданное нововведение — формулы. Данный инструментарий реализован через создание пользовательских свойств в менеджере свойств. И это огромный плюс, так как формулы не привязываются к каталогу, ячейке, как в Excel, а выполняют роль пользовательского свойства того или иного объекта. Поэтому мы можем использовать формулы не только в каталогах, но и в выносных надписях, графических заменах, при поиске объектов и т.д.

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

Поэтому, чтобы решить задачу, придется воспользоваться сторонними средствами. Наиболее подходящим будет Excel, так как эта программа позволяет работать с формулами, а сам Archicad умеет экспортировать каталоги в формат XLSX. Экспорт каталогов из Archicad не занимает много времени и делается буквально в три клика. Хочу заметить, что простой ручной подсчет в таблице нам не нужен. Нам важно сделать так, чтобы был автоматизирован практически весь процесс. Чтобы при изменении какого-либо значения в проекте все автоматически пересчитывалось и подставлялось в нужные нам места. Сделать это несложно, и общая схема процесса будет выглядеть так, как показано на рис. 3.

Рис. 3 Рис. 3

Я покажу весь этот процесс на примере подсчета коэффициента рентабельности.

Экспорт каталогов в формат XLSX

Сначала мы экспортируем каталоги в формат XLSX (рис. 4−5). Если открыть эти файлы, то можно заметить, что внешний вид таблиц остался прежним. Присутствуют даже изображения.

Рис. 4 Рис. 4 Рис. 5 Рис. 5

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

Создание нового файла формата XLSX

После экспорта каталогов из Archicad необходимо создать новый файл формата XLSX. Это основной файл, в котором будут собираться данные и который мы будем использовать при импорте в Archicad.

Откроем этот файл и в первом столбце сразу зададим наименование рассчитываемого значения: «Коэффициент рентабельности». А во втором столбце пропишем формулу для подсчета этого коэффициента. Формула прописывается таким образом, чтобы данные для подсчета поступали из таблиц, которые мы экспортировали из Archicad. Для этого нам нужно изначально открыть все таблицы, из которых мы хотим брать данные. Вспомним, что нужная нам формула выглядит так:

площадь арендных помещений ÷ площадь этажа

Для этого в строке формул нашей таблицы записываем (рис. 6):

= (равно),

Рис. 6 Рис. 6

Переходим к таблице с площадью арендных помещений и щелкаем по ячейке с нужными данными (рис. 7).

Рис. 7 Рис. 7

Снова переходим в строку записи формулы и ставим знак / (разделить). Затем переходим к таблице с площадью этажа и щелкаем по ячейке с нужными нам данными (рис. 8).

Рис. 8 Рис. 8

Возвращаемся в файл, где записываем формулу для расчетов, и в строке формул жмем Enter. Всё, теперь можно закрыть каталоги, экспортируемые из Archicad. При необходимости оформляем внешний вид таблицы: рисуем рамку, задаем нужный шрифт, округляем полученное значение (рис. 9).

Рис. 9 Рис. 9

Сохранение таблицы в формат PDF

Далее мы можем, конечно же, просто выделить нашу таблицу, скопировать содержимое в буфер обмена, а затем вставить в Archicad как текст или изображение, благо Archicad позволяет нам воспользоваться и таким способом импорта данных. Но этот способ работы с данными нам не подходит, так как при малейшем изменении каких-либо значений в проекте потребуется много ручной работы. Да и слишком он «грязен» для проекта, если вставлять текстом. Для того чтобы мы могли автоматизировать процесс обновления данных из Excel в Archicad, будем пользоваться сохранением таблицы в формат PDF. Это еще один формат, с которым Archicad прекрасно работает «из коробки», позволяя размещать его во всех проекциях и макетах проекта. Что немаловажно, он по умолчанию автоматически обновляет данные из ссылочного документа.

Сохраним нашу таблицу в формат PDF и импортируем документ в Archicad. Затем разместим в нужном месте на макете и зададим нужную область видимости (рис. 10).

Рис. 10 Рис. 10

Создание макроса для автоматического сохранения PDF

Теперь значение будет автоматически меняться при изменении значения в PDF. Но это еще не автоматизированный способ. Чтобы Excel автоматически пересохранял лист PDF с тем же именем при смене данных, мы можем записать макрос в нашу таблицу с подсчетом коэффициента рентабельности. Макрос — это определенный повторяющийся алгоритм действий, который можно записать в виде микропрограммы. Для этого в нашей созданной таблице следует перейти на вкладку Разработчик (если она неактивна, включите ее в меню Файл/Параметры/Настроить ленту) и нажать иконку Запись макроса. В открывшемся окне вводим имя макроса и определяем место сохранения макроса. Выбираем сохранение в этой же книге, чтобы его не потерять. Нажимаем ОK (рис. 11).

Рис. 11 Рис. 11

Всё, началась запись макроса — то есть запись наших действий, которые мы хотим автоматизировать. Начинаем производить эти действия. Перед сохранением в PDF нам обязательно нужно обновлять данные из связанных таблиц. Для этого переходим на вкладку Данные. Выбираем пункт Изменить связи. В открывшемся окне выбираем наши присоединенные таблицы и для каждой нажимаем Обновить (рис. 12).

Рис. 12 Рис. 12

После обновления закрываем окно. Переходим во вкладку Файл и сохраняем PDF с правильным именем в нужном месте. В нашем случае файл PDF уже существует, поэтому его нужно сохранить с заменой (рис. 13).

Рис. 13 Рис. 13

Затем переходим во вкладку Разработчик и останавливаем запись макроса, после чего сохраняем нашу таблицу, выбирая тип файла с поддержкой макросов (рис. 14).

Рис. 14 Рис. 14

Автоматический запуск макроса

Теперь при открытии этой таблицы нам просто понадобится запустить наш макрос, и все действия по обновлению связей и сохранению в PDF произойдут автоматически. Пойдем дальше и еще больше автоматизируем процесс. Для удобства данный макрос можно настроить на автоматический запуск при открытии файла. Для этого переходим на вкладку Разработчик и запускаем редактор Visual Basic. Выбираем наш макрос во вкладке Modules и копируем текст макроса в буфер обмена (рис. 15).

Рис. 15 Рис. 15

Затем выбираем вкладку ЭтаКнига, открываем в выпадающем окне Workbook и Open и вставляем наш скопированный текст (рис. 16). Сохраняем и закрываем.

Рис. 16 Рис. 16

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

А так как в Archicad данный лист PDF настроен на автоматическое обновление, то данные будут обновляться и там. Необходимо лишь при изменении площади этажа или площади арендных помещений экспортировать эти таблицы из Archicad в то же место и с тем же именем с заменой существующего файла (рис. 17).

Рис. 17 Рис. 17

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

Импорт графиков и диаграмм из Excel в Archicad

Мы можем импортировать из Excel не только таблицы с подсчетами, но и графики и диаграммы. Построим простую диаграмму на основе данных площадей первого этажа. Сама схема импорта в Archicad будет такой же — через PDF. И для того чтобы не создавать огромное количество новых XLSX-файлов, не запутаться при их запуске для обновления данных, мы продолжим работу в файле, который создавали ранее. Для этого просто создадим новый лист и назовем его Диаграмма (рис. 18).

Рис. 18 Рис. 18

Далее через меню ленты ВСТАВКА создаем нужную нам диаграмму (рис. 19).

Рис. 19 Рис. 19

Затем нам следует выбрать данные, которые будут необходимы для построения диаграммы (рис. 20).

Рис. 20 Рис. 20

Для этого нам, как и в прошлый раз, необходимо будет открыть экспортируемую из Archicad таблицу с площадями и в открытой таблице выделить нужные столбцы для подсчета. При выделении следует выбирать и названия столбцов, чтобы впоследствии можно было автоматически сделать подписи к значениям на диаграмме (рис. 21). Нажимаем ОК.

Рис. 21 Рис. 21

Настраиваем диаграмму под нужный формат отображения. Далее снова создаем макрос для автоматизации действий с сохранением. Так как предыдущий макрос уже производил действия с обновлением связей, в этот макрос следует записать только выбор соответствующего листа и сохранение диаграммы в формат PDF (рис. 22).

Рис. 22 Рис. 22

Алгоритм создания записи макроса остается прежним. После создания макроса снова переходим в редактор Visual Basic и вносим новый макрос в процедуру, автоматически выполняемую при открытии файла. Выбираем созданный макрос и выделяем код (рис. 23).

Рис. 23 Рис. 23

Затем переходим в пункт ЭтаКнига и вставляем код из буфера обмена сразу вслед за кодом предыдущего макроса (рис. 24).

Рис. 24 Рис. 24

Всё сохраняем и закрываем. Теперь остается лишь разместить на макете созданный файл PDF (рис. 25).

Рис. 25 Рис. 25

Принцип действия связи аналогичен. При изменении площадей в проекте необходимо лишь экспортировать (с заменой) каталоги с изменившимися данными из Archicad и открыть файл, содержащий в себе расчеты: тот, в котором находятся расчет коэффициента и диаграмма. Весь этот процесс занимает несколько секунд. Как вы заметили, все расчеты можно делать и в одном файле Excel, но создавая каждый раз новый лист и дописывая новый макрос. Это обеспечивает определенное удобство, так как не нужно постоянно открывать большое количество файлов для обновления PDF.

Другие возможности организации взаимодействия

Это был лишь один из примеров организации взаимодействия. Связывая две программы через PDF, мы можем использовать все преимущества Excel. Составлять свою настраиваемую таблицу с данными, выгруженными из Archicad, и размещать ее в проекте. Производить более сложные расчеты, недоступные в среде Archicad. Легко наполнять макеты дополнительными наглядными графиками, диаграммами. Также есть возможность использовать вместе с программой Excel средство визуализации данных POWER BI. А импорт через PDF позволяет разместить на макетах бизнес-аналитику — в три клика и без программирования сложных кодов, что выгодно отличает Archicad от конкурентов.

Описывая взаимодействие этих двух программ, нельзя не упомянуть встроенный в Archicad инструмент импорта и экспорта значений свойств элементов в виде электронных таблиц (рис. 26).

Рис. 26 Рис. 26

Импорт значений из Excel в Archicad

Archicad позволяет не только экспортировать значения в формат XLSX, но и импортировать измененные в таблице значения в проект. Попробую продемонстрировать такую возможность на примере коэффициента рентабельности. Прежде всего создадим эти свойства в менеджере свойств. Для стандартизации поместим их в группу ТЭПы (рис. 27).

Рис. 27 Рис. 27

Для каждого значения следует выбрать тип данных «Число» (это нужно для корректного отображения и округления в дальнейшем, ведь сам коэффициент — числовое значение). Для того чтобы мы могли взаимодействовать с этими свойствами в проекте, создавать каталоги, они должны принадлежать какому-либо элементу в классификации. Я выбрал морф, так как этот инструмент меньше всего используется в проектах для вычислений (сделаю оговорку и скажу, что это я редко использую этот элемент при BIM-проектировании. Другие, возможно, используют его чаще).

Теперь создадим нетвердотельный морф и разместим его на неиспользуемом слое — например, на стандартном слое «Скрыт». Этот морф создается для того, чтобы мы смогли идентифицировать созданные нами свойства и занести их в каталог для подсчетов. Грубо говоря, созданный морф будет объектом хранилища наших ТЭПов, и его ни в коем случае нельзя удалять. Поэтому лучше всего размещать такие объекты на неиспользуемом и выключенном слое. Дальше требуется только создать каталог и оформить его внешний вид (рис. 28).

Рис. 28 Рис. 28

Теперь мы можем воспользоваться экспортом таблицы в формат XLSX. Но в этот раз применим другой инструмент экспорта из Archicad, Файл/Взаимодействие/Классификации и свойства. Сохраняем этот каталог, а затем открываем его (рис. 29−30).

Рис. 29 Рис. 29 Рис. 30 Рис. 30

При таком способе из каталога Archicad происходит выгрузка именно данных, а не внешнего вида таблицы. Поэтому для импорта в Archicad формат PDF использоваться не будет и, следовательно, тратить время на оформление таблицы не следует. Но для подсчета коэффициентов необходимо снова записать формулы в ячейки данных. Процесс записи формул идентичен предыдущему способу. После записи всех формул сохраняем файл. При изменении значений в ссылочных каталогах необходимо будет заново открывать этот файл для обновления значений. При каждом открытии файла Excel будет запрашивать у нас обновление связей. Всегда выбираем Обновить, а затем закрываем с сохранением.

Возвращаемся в Archicad. Переходим в Файл/Взаимодействие/Классификации и свойства и теперь выбираем импорт значений свойств. Для импорта выбираем нашу таблицу, в которой мы прописали формулы (рис. 31).

Рис. 31 Рис. 31

При импорте Archicad спросит, какие именно значения следует извлечь в каталог. Так как при создании свойств в типе данных мы использовали «Число», при импорте числовые значения автоматически округляются до сотых (исходя из настройки окружающей среды Archicad). Теперь остается просто разместить каталог на листе (рис. 32).

Рис. 32 Рис. 32

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

Кроме того, используя этот способ взаимодействия, мы можем внести с помощью Excel формулы в специально созданные пустые ячейки каталога. Например, возвращаясь к нашему коэффициенту рентабельности, в каталоге с площадями «Арендная площадь» и «Другая площадь» мы можем создать пустое поле и использовать его для отображения этого коэффициента. Настроив экспортируемую таблицу и используя импорт данных, мы можем автоматически обновлять это значение без риска ошибиться в подсчетах. Единственное, что для обновления данных этого каталога всегда придется пользоваться импортом значений — и это, пожалуй, главный минус представленного способа.

Может показаться, что в описанных мною способах слишком много ручной работы и кликов при использовании, но это только на первый взгляд. Настроив всё один раз, вы будете осуществлять весь процесс обновления в два-три клика. А впоследствии созданные файлы и связи можно будет использовать как шаблоны для проектов. Ведь лучше один раз потратить время на настройку и оформление, чем тратить его постоянно при создании нового проекта.

Об авторе

Александр Крылов начал проектную деятельность в 2013 году. Работал над проектом гостиницы в центре Москвы, разрабатывал проекты загородных жилых домов, частных интерьеров и частного музея. В 2017-м был назначен ведущим архитектором по нескольким объектам исторических парков «Россия — моя история». В составе группы архитекторов работал над проектом главного храма ВС РФ в парке «Патриот». Входил в команду архитекторов, проектировавших благоустройство территории музея-заповедника «Херсонес Таврический».

Ведущий специалист-архитектор девелоперской фирмы ICM. Осуществляет разработку коммерческо-деловых центров компании, а также проработку существующих офисных центров.

Александр Крылов
ведущий специалист-архитектор
девелоперской фирмы ICM
Опубликовано:
helpcenter.graphisoft.ru