FileMaker
お役立ちブログ
【FileMaker関数解説】改行記号でつなぐの、やめませんか?
✅ はじめに
FileMakerで複数の値を縦に表示したいとき、
以下のように改行記号(¶)を使って連結していませんか?
フィールドA & “¶” & フィールドB & “¶” & フィールドC
これは昔からよく使われている方法で、決して間違いではありません。
しかし実務では、この書き方が原因で余計な調整やバグ対応が発生することも少なくありません。
そこで今回は、
改行連結の代わりに List 関数を使うメリットをご紹介します。
⭐️よくある課題:改行記号連結の弱点
改行記号で値をつなぐ場合、次のような問題が起こりがちです。
途中のフィールドが空だと、空行が発生する
空行を消すために
IfやSubstituteを追加する必要がある計算式が長くなり、意図が分かりづらい
If (
IsEmpty ( フィールドB ) ;
フィールドA & “¶” & フィールドC ;
フィールドA & “¶” & フィールドB & “¶” & フィールドC
)
このように、表示のためだけに条件分岐が増えてしまうケースは非常に多いです。
💡 List関数を使ったシンプルな解決方法
🔹 同じ処理は、List関数を使うと次のように書けます。
List ( フィールドA ; フィールドB ; フィールドC )
これだけです。
🧪 List関数が優れている理由
① 空の値を自動で除外してくれる
List関数は、空の値を自動的に無視します。
フィールドBが空 → 自動的に除外
余計な改行が入らない
空値チェックを書く必要がありません。
② 計算式の意図が一目で分かる
List ( A ; B ; C )
この式を見るだけで
「複数の値を一覧表示している」
という意図がすぐに伝わります。
後から見返したときや、他の人が修正するときにも親切です。
③ 後から用途変更しやすい
Listで作ったテキストは、用途変更が簡単です。
画面表示:そのまま使用
CSV出力:Substitute ( List ( A ; B ; C ) ; ¶ ; “,” )
ログ出力:1行テキストに変換
「まずListでまとめる」という設計は、再利用性が高くなります。
💎実務でよくある置き換え例
Before(改行記号)
住所1 & "¶" & 住所2 & "¶" & 建物名After(List)
List ( 住所1 ; 住所2 ; 建物名 )空行が出ない
式が短い
読みやすい
と、良いことづくめです。
📌「Listを使える人」に見える理由
変数名は意味のある日本語で設定すると読み返しやすい
List内の順序は重要度に応じて並べ替える
本番環境ではデバッグ用出力を非表示にする
数値には
RoundやNumToJTextなどで表記ブレを防止する他関数に渡す場合は改行(¶)の扱いに注意する
✨まとめ
改行記号でつなぐ前に、まず List を検討する。
これだけで、
計算式は短く
バグは減り
表示はきれい
になります。
List関数は、単なる「改行用関数」ではなく、
テキストを安全にまとめるための基本関数です。
ぜひ、日々のFileMaker開発で活用してみてください。
その他の記事
