WORKS&TOPICS

WORKS&TOPICS

2025.11.14

DAILY

Archicad数式エディタでALVS!①

Archicad数式エディタでALVS!①

はじめまして。入社1年目、株式会社ixrea 平と申します。まだまだひよっこですので御容赦を!

さて、個人的に日頃悩まされているALVSをどうにかもっと楽にできないものかと…。Excel/スプレッドも整備はしていましたが

「書き出しが面倒!」「ファイルどこ?!」

が稀に発生するのと、どうしても目が滑って修正漏れ
が…なのでやはりArchicad内で済ませたい!
今回はそんなALVS数式エディタ試作回①でございます。

ALVSとは?
なんてベタなお話は割愛します、きっと読んでくれている皆さんは私より歴戦だと思いますので唐突に始めます!

まず今回は準備編です

  • デフォルトのプロパティに「採光計算」はある。
  • プロパティは何が必要?
  • 入力はどこまで自動化できる?
  • そもそもどの要素のプロパティでつかう?

ご存じだと思いますが、Archicadのデフォルトプロパティに「採光計算」はあるんです。ただ、とても申し訳ないのですが、これ使いにくいです…。
水平距離の入力もメートルで小数点以下ないですし。高さも自動だど都合が悪い場合有りますので。
なので気にせず作成していきます!

必要プロパティ

・水平距離
・中心迄の高さ
・係数:K(計算値)
・係数:K
・算定式:d/h✕
・窓の形式
・開口部(W)
・開口部(H)
・有効面積
・換気有効面積
・採光有効面積

以上、手入力/選択/計算式の3種です。

 

自動化はどこまで?

計算できるところは自動化しますが、採光高さと距離は手入力です。これは基本不利側で計算することになるので手入力の方が都合がいいと思いました。
算定式、窓の形式はオプションセットにて。こちらは単に分かりやすいという理由ですね。その他は数式エディタで組んでいきたいと思います。

今回プロパティは窓で

要素はゾーンでできれば一覧表が楽なんでしょうけど思いつきませんでした!Archicad使い始めて半年強なので見落としている可能性はありますが、仕様上無理なのでは?と正直薄っすら思っています…。

数式エディタの基本…まずつまづく人は8割以上これじゃないでしょうか?
「データタイプ」
文字列/数値/整数の3種ですが、結論から言いますと

「基本文字列使ってください!」

Archicadのシステムで一番面倒なのが数字の自由度の無さだと思うんです。
小数点以下の制限、単位付きの数値の扱いなど…不便です。
きちんと使えば便利で良いものかもしれませんが、シンプルでいいんです。シンプルがいいんです!グラフィさんお願いします!

少し進めていきます。

準備編とは書きましたが、内容も含めて少し進めますw
窓の幅を開口部(W)にいれていきますが、まずこちらダメなパターンのご紹介です。

ダメなパターン

ただ読み込むだけでは使用できず。

データタイプは3種類

このままではデータタイプでエラーになります、プロパティのデータタイプと数式の結果出力されるデータタイプを合わせなければいけません。そのまま使うならわざわざプロパティは作らなくてもいいですしね。なぜわざわざ作成するのか?

既存プロパティをラベルで表示

ラベルでプロパティを引っ張ってきていますがこうなってしまうと表にする時に使いにくい。幅はメートルにしたいなどなどわがままに言いたい放題。なのでこちらでサクッと変換します。壁開口は値自体が今回の目的には合いませんね。

STRCALCUNITで変換

STRCALCUNITを使用します。これは単位のついた値(長さ、面積など)を文字列に変換します。文字列なのでデータタイプはもちろん”文字列”です。
この状態だと「1,750.0」という”文字列”になりますが、メートルにしたいので1000で割りたい。ですが”文字列”なので計算ができません。
なのでこちら

STRTONUMで”数値”に変換

STRTONUMを使用。こちらは”文字列”を”数値”に変換、そしてすかさず割ります!ですがここで問題が発生します。ちなみに、この状態のデータタイプは”数値”または”整数”です。

小数点以下が繰り上がって消えます。

計算はできましたが、高さの下の「2」見事に繰り上がってますね。「1.750」と表示されてほしい。とりあえず、おなじみな関数ROUNDDOWNを使ってみます。

おなじみな関数ROUNDDOWN
結果は同じ

基本文字を使ってください!はこういうことです。なので別な関数を使って”数値”を”文字列”に変換しつつ小数点以下も調整していきます。

STRを使用して変換

STRを使用します。注意が必要なのが、STRは単位のある数値からの変換不可です。つまり、”幅”や”高さ”などには使用できませのでご注意を!

小数点表示完了

これで目的は達成、高さにも適用してこのまま有効面積までいきます!速足です!

データタイプ注意_文字列同士の計算不可
STRで小数点調整お忘れなく
面積もデータタイプが数値だとやっぱりこうなります。
文字列を使いましょう!

・・・と、やっていることはほとんど同じですがこんな感じで変換が重要です。おそらくですが、このデータタイプの扱いさえわかってしまえば、数式エディタは簡単です。特にマニュアル読み込んだりせずとも気付いてしまえば問題ありませんでした。

まとめ
数式エディタはデータタイプに注意。基本文字列が使いやすい。今回私は画像に助けられている。が今回の主な内容かと思います!そして、ここまでお読みいただきありがとうございます!あまり文章は得意ではないため雑ではありますが、ALVS①いかがでしたでしょうか?次回ALVS②も頑張ってまとめますので機会があれば読んでみてください。よろしくおねがいします!

DAILY ”の他の記事

WORKS&TOPICS 一覧