2024-06-23 10:19 PM - 編集済み 2024-06-24 12:16 AM
※本記事は、旧サイト「How to use Archicad」より、kotetsuさん の2021年1月7日の記事を転載しています。
※本稿はArchicadの数式エディタ・一覧表・発行セットとExcel関数の基礎的な知識がある方を対象にしています。(難しいという意味では無く、説明を一部省略しているので調べながらでも読み進められると思います)
この記事では、以下のような一覧表を、Archicadのゾーンとの連動性を保ったまま出力する方法を紹介します。
Archicadの面積表は工夫次第で思ったとおりのレイアウトに近いものを作成することが可能です。
他の方の記事ですが、例えばこちらの記事などが参考になります。
自分の会社の仕様とArchicadで出力した一覧表の仕様が多少違っていても、BIMデータと連動しているメリットは計り知れないため、無理に現状の図面仕様に合わせずArchicadで出せる形で使うのが原則です。
が、しかし、お客様の要望などでどうしても「このレイアウトで無くてはいけない!」という場面もあるかと思います。
そんなときにArchicadの面積表をコピー&ペーストで指定のExcelなどのレイアウトに貼り付けるのは面倒ですし、コピペ間違いも起きやすいです。
ここでは、Archicadからデータ参照用のExcelを出力し、値のみをレイアウトしたExcelから参照することでどのようなレイアウトでも対応可能な形にする方法を紹介します。
具体的な方法を以下で解説します。
Excelのvlookupはひとつのキー(検索値)しか検索出来ません。
そのため、1Fかつ倉庫のような検索は出来ず、下のようなExcelではうまく値を取得できません。
ここはArchicadの数式エディタを使って一工夫必要です。
プロパティマネージャを開き、タイプ:文字列で以下のようなプロパティを作成します。
下の文字列をコピーして作成しても構いません。
CONCAT ( {Property:一般パラメータ/配置フロア名}, {Property:ゾーン/ゾーン名} )
これによってフロア名+ゾーン名となる一連の文字列が作成されます。
忘れずに「使用可能な分類」を指定して
作成したプロパティとゾーンの正味面積を一覧表にします。
作成した一覧表を開き、「均一項目を結合」します。
これで読み込み用のデータ取得用Excelデータが完成しました。
毎回同じファイル名・同じ場所に保存したいので発行セットを作成します。
一覧表からビューを作成→作成したビューを発行セットに設定します。
「形式」から「xlsx」を選択します。
任意のフォルダとファイル名で出力設定をします。
今回は以下の設定にします。
このようなレイアウトに配置することを想定します。
このままだと、フロア名(1F≠1FL)も一部の室名(ゲストルーム≠ゲストルーム)も異なるため、vlookup用のキーを欄外に配置します。
上と左に1列/行ずつ増やし、それぞれにArchicadのフロア名・ゾーン名に合った文字列を入力します。
D7セルに以下の文字列を入力します。
=VLOOKUP($A7&D$1,'D:\HowToUse[面積表用データシート.xlsx]面積表用データシート'!$A:$B,2,FALSE)
関数の中身の構成は以下のような形です。
ここまで出来たら、D7セルの右下をドラッグして他のセルにオートフィルでコピーします。
おっと、一部のセルで「#N/A」が出てしまいました。
これは例えば1Fに「住居」が無いため、vlookupで検索した結果見つからなかったためです。
関数の文字列を修正します。
=IFERROR(VLOOKUP($A7&D$1,'D:\HowToUse[面積表用データシート.xlsx]面積表用データシート'!$A:$B,2,FALSE),0)
これでエラー(存在しないゾーン)が出た場合は0が表示されます。
改めて他のセルにオートフィルなどをかけて、合計値は普通にSUMで合計します。
これで表の完成です。
Archicadのゾーンが変更されたらひと手間ありますが、連動するようになっています。
以下のように面積が変わった場合
(とてもトイレの広い建物になってしまいました)
再度、一覧表を発行します。
(その際、参照用とレイアウトされたExcelファイルは閉じておきます)
同フォルダ・同名なのでファイルが上書きされます。
面積表のExcelファイルを再度開くと、自動的に面積が更新されています。
(データ更新に関する警告が出る場合は「更新する」を選択してください)
いかがだったでしょうか。
Archicadの一覧表のようにリアルタイム更新とまではいかなくても、情報を連動性を保ったまま好きなExcelファイルに受け渡すことが出来ました。
Archicadから出力するデータを、表のレイアウトに関係ないデータ取得用のファイルとして割り切ることで、自由度の高い表現が可能です。
お試しください。