数式列を追加する

数式列を使うと、RaySheetでExcelと同じ関数や演算子で計算式を使えます。

Salesforceの数式項目とRaySheetの数式の違いは、次の通りです。

  • Salesforceの数式項目ではSalesforceの関数を使えます。数式列ではExcelの関数を使えます。数式列で使用可能な関数は関数と演算子の一覧を参照してください。
  • 数式項目はシステム管理者が追加できます。数式列はシステム管理者またはユーザが使えます。
  • 数式列ではクロスオブジェクト(オブジェクトをまたがった項目の参照)や積み上げ集計はできません。

数式列はユーザがすでに利用できるデータを加工して表示する手段を提供します。数式列によって、Salesforceユーザが権限を持たないSalesforceのデータを参照することはできません。

数式列の情報はビューに保存され、ユーザがビューを開いたときにブラウザ上で計算が実行されます。ワーク列と異なり、数式列を追加してもSalesforce上でレコード数分のストレージが増加することはありません。たとえば、すべてのレコードに数式列の結果が表示されていても、Salesforce上のデータは列ごとの数式の情報だけです。数式列の各レコードの結果は、ブラウザー上での計算結果が表示されているので、Salesforce上のストレージは消費されていません。

数式列の仕組み

RaySheetの数式列はSalesforceのサーバー上ではなく、お手元のWebブラウザ上で計算されます。RaySheetの開発元であるグレープシティはソフトウェア開発者向けに表計算の画面部品を30年にわたり提供しています。その技術に基づいてブラウザ上で実行できる数式列をSalesforce上のスプレッドシートに提供しています。

数式列の仕様

  • 使用可能な関数と演算子は、関数と演算子の一覧を参照してください。
  • 使用可能な数式の長さは、1つの数式列につき8,912文字です。これはExcelのセルの場合と同じです。実際の文字数の上限は使用する文字の種類や、項目の内部名(API名)の影響を受けます。
  • 数式列の数式は、同じビューの他の列、ワーク列、他の数式列を参照できます。他のビューの列は参照できません。
  • 数式列はSalesforceのセキュリティに基づいて動作するので、Salesforceの項目レベルセキュリティでオブジェクトの項目へのアクセスが禁止されている場合は、数式からその項目にアクセスできません。
  • 数式列の値は、RaySheetからのみ参照できます。Salesforceの標準UI、リストビュー、レポートなどからは参照できません。
  • 数式列は、システム管理者が組織全体で機能を無効化または有効化できます。数式列は既定で有効化されています。参考:機能の有効化と無効化
  • Excelではユーザが数式をセル上で直接入力できますが、数式列ではビューのデザインで数式を指定し、数式の結果は読み取り専用となります。ユーザはシート上のセルから直接に数式を編集できません。
  • 数式列ではルックアップの列を参照できません。代わりに、ルックアップの名前を参照できます。たとえば、「取引先責任者」から「取引先」を参照する場合は、「取引先」そのものではなく「取引先名」を参照します。
  • 数式ではSalesforceの項目名(列名、表示ラベル)で他の列の値を参照します。カスタムラベルは使用できません。たとえば「取引先名」という項目(列)に「名前」というカスタムラベルを使って列の見出しを変更しているとき、数式で「=[名前]」としても値を参照できません。「=[取引先名]」と記述します。
  • 数式列では、内部的にはSalesforceの項目のAPI名(項目名)を使用しています。このため、Salesforceの設定画面でカスタム項目のラベルを変更しても数式は引き続き動作できますが、カスタム項目のAPI名を変更した場合は数式の再設定が必要になります。項目名を変更するとその項目自体がビューに表示されなくなるため、これは数式列に限った制限ではありません。数式列以外の列も再設定も必要になります。
  • 数式列では、列単位の集計はできません。列単位の集計には、集計行集計列を使用します。
  • 数式列では、並び替え(ソート)や絞り込み(フィルター)がブラウザ側で実行されます。並び替えや絞り込みの状態は保存されません。

数式列を追加する

  1. タイトルバーの右上の「デザイン」をクリックする。
  2. 「列」をクリックする。「列」が表示されていない場合、オブジェクト名をクリックする。
  3. 下向きの三角形アイコンをクリックした後、ドロップダウンから「数式列」をクリックする。
  4. 「数式列を追加」画面が表示されることを確認する。
  5. 簡単な例として、既存の項目にテキストを追加して表示する例を記入する。「ラベル」に「取引先名と敬称」、「数式」に=[取引先名]&" 御中"を記入し、「OK」をクリックする。
  6. 次のように緑色のアイコンを持つ「取引先と敬称」列が追加されたことを確認する。右上のバツアイコンをクリックして「デザイン」を閉じる。
  7. 実際の数式列の結果を確認する。

数式列は読み取り専用なので、追加した数式列の見出し(ヘッダー)には錠(じょう)のアイコンが表示されます。

数式列は関連オブジェクトにも追加できます。

拡張された数式エディタ

数式列を追加する画面で「拡張」をクリックすると、「拡張された数式エディタ」を使用できます。

「拡張された数式エディタ」では項目名や関数名を参照できます。

v4.5では、「現在の行」または「すべての行」を選択できます。

数式列を削除する

数式列を削除すると、削除した数式は回復できません。v4では削除時に確認メッセージが表示されないので注意してください。

  1. タイトルバーの右上の「デザイン」をクリックする。
  2. 「取引先」をクリックする。
  3. 「列」をクリックする。
  4. 削除したい数式列を選択し、バツアイコンをクリックする。

数式列と共有

数式列が属するビューを共有すると、通常の列と同じように数式列を他のユーザに共有できます。共有先のユーザが参照できない列(項目)を数式が参照している場合、エラーが起きる可能性がある点に留意してください。

数式列と列型

数式列では次の列型を使用できます。既定はテキストです。

  • テキスト
  • チェックボックス
  • 数値
  • 日付
  • 日付時刻
  • リンク
  • イメージ

ワーク列との違いとして、数式列では「イメージ」を使用できます。

数式列の列型を変更するには、次の手順を実行します。

  1. スプレッドシート上で数式列の見出しを右クリックする。Macの場合、Controlキーを押したままクリックする。
  2. 表示されるコンテキストメニューから「列の設定・・・」をクリックする。
  3. 「列の設定」画面で「列型」から任意の列型を選択する。
  4. 「OK」をクリックして変更を確定する。

数式列と書式設定

数式列の結果に書式設定を使用できます。たとえば「2017/12/31」という結果を「平成29年12月31日」と表示したり、「10000」を「10,000」と表示できます。

書式設定の方法は、項目列の場合と同じです。次のトピックを参照してください。

数式列とSalesforceの項目

数式列では、ビューに追加されている他の項目列を参照できます。たとえば、「取引先」で「取引先名」を参照するには次のように「取引先名」を半角のブラケット(’[‘、’]‘)で囲って数式に記述します。

=SUBSTITUTE([取引先名],"株式会社","㈱")

この数式は「日本株式会社」を「日本㈱」のように省略して表示します。この数式を実行するためには、「取引先名」項目が列としてRaySheetのビューに追加されている必要があります。「取引先名」は項目の表示ラベルです。列のカスタムラベルは数式では認識されません。

項目を画面に表示したくない場合は、項目を追加した後、非表示に設定します。

=SUBSTITUTE([!Name],"株式会社","㈱")

つまり、ブラケット内をエクスクラメーションマーク(’!‘)ではじめると、API名として処理されます。項目のAPI名を知るには、RaySheetのビューの列の一覧でツールチップの表示を確認します。

API名で指定した項目は、数式を再表示する際に該当する項目名に置き換えて表示されます。

数式列から別の数式列を参照する

ある数式列の中の数式で、別の数式列の結果を参照できます。これは、Excelのテーブル数式で他の列の数式の結果を参照できるのと同様です。別の数式列を参照するには、その数式列のラベル(列名)を使用します。

数式列からワーク列を参照する

ある数式列の中の数式で、ワーク列の結果を参照できます。これは数式列や項目列を数式から参照できるのと同様です。

ワーク列は列型が既定で「テキスト」になっています。数値や日付として計算する場合は、ワーク列の列型を変更します。

並び替え(ソート)と絞り込み(フィルター)

数式列の並び替えと絞り込みは、Salesforceのサーバーではなくお手元のブラウザで実行されます。このため、Salesforceの項目を並び替える場合と結果が異なる場合があります。

次の図は、左が項目列のドロップダウン、右が数式列のドロップダウンで、違いを示しています。数式列では、現在のページのレコードだけが並び替えおよび絞り込みされるため、「現在のページのみ」という注記が表示されます。

数式列の並び替えと絞り込みの状態は保存されません。ブラウザでページを再読み込みすると、状態が破棄されます。

クリップボードへのコピー

数式列では、セルを選択してキーボードのCtrl + Cキーを押下すると数式の結果をクリップボードにコピーできます。セルの文字の一部だけを選択してコピーしたい場合は、数式バーからテキストを部分的に選択してキーボードのCtrl + Cキーを押下します。

グループ化

数式列はグループ化できません。代わりに、v4.5では「自動的にセルを結合」を使用してセルを結合できます。

数式の書式

数式では、Excelと同じようにイコール(’=‘)で始めることも、Salesforceの数式項目と同じように’=‘を省略することもできます。どちらの場合でも数式の結果は同じになります。

このドキュメントでは数式であることを明示するため、’=‘を省略していません。

数式バー

数式バーには、Excelと異なり、数式列の数式ではなく数式の結果が表示されます。数式バーという名前は、Excelと操作の互換性を保つための命名です。

数式列とエクスポート

Excelエクスポートでは、数式列の数式が出力されます。CSVエクスポートでは、数式の結果が出力されます。(2018年6月以前に「数式自体を出力することはできません。」との誤った記載がありました。お詫び申し上げます。)

数式列をエクスポートするとき、次の3つの関数に注意してください。

  • DAYS関数とSWITCH関数はExcel 2016で追加されたため、Excel 2010やExcel 2013では「#NAME?」エラーとなります。
  • CASESAFEID関数はSalesforce固有のため、Excelでは動作せず「#NAME?」エラーとなります。
Copyright © 2018 GrapeCity inc. All rights reserved.