> For the complete documentation index, see [llms.txt](https://manuals.i-reporter.jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://manuals.i-reporter.jp/create-a-form/prepare-the-formexcelfile/excelfunctions.md).

# EXCEL関数機能

## **機能概要**

i-Reporterは、四則演算と、40以上のEXCEL関数に対応しています。

Excelファイル上で「計算式クラスター」に設定したセルに記述されているEXCEL関数を、ConMas i-Reporter用の関数に変換して自動設定します。

{% hint style="warning" %}
【注意】

すべてのEXCEL関数に対応している訳ではありません。\
i-Reporterで使用できるのは、本マニュアルの 「使用可能なEXCEL関数」に記載があるもののみです。\
i-Reporterで対応していないEXCEL関数を使用した場合、ConMas Designer取り込み時にエラーになります。
{% endhint %}

## **使用可能なEXCEL関数**

{% hint style="warning" %}
下記EXCEL関数に加えて、四則演算子（+ -\* /）のみ使用可能です。

「&」（アンパサンド）はご使用いただけません。

また、「\*」（半角アスタリスク）をワイルドカードとして使用することもできません。\
「\*」（半角アスタリスク）は「乗算」の算術演算子としてのみ使用できます。
{% endhint %}

### **論理関数**

論理関数は指定した条件を判定する場合に使用します。

<table><thead><tr><th width="114">関数</th><th>説明</th><th data-hidden>No．</th></tr></thead><tbody><tr><td>IF</td><td>値または数式が条件を満たしているかどうかを判定し、結果に応じて指定した内容を返します。</td><td>1</td></tr><tr><td>IFERROR</td><td>数式の結果がエラーの場合は指定した値を返し、それ以外の場合は数式の結果を返します。</td><td>2</td></tr><tr><td>AND</td><td>論理積を求めます。IF関数の条件式でのみ使用できます。</td><td>3</td></tr><tr><td>OR</td><td>論理和を求めます。IF関数の条件式でのみ使用できます。</td><td>4</td></tr></tbody></table>

{% hint style="warning" %}
AND/ORの使用には制限事項があります。\
詳細は 「[AND/OR関数の使用制限](#andorno)」 の項も併せてご参照ください。
{% endhint %}

### **統計関数**

統計関数は対象となる集計データの平均値、最大値、最小値を求めることができます。

<table><thead><tr><th width="161"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>AVEDEV</td><td>平均偏差を返します。</td><td>5</td></tr><tr><td>AVERAGE</td><td>引数で指定した値の平均値を返します。</td><td>6</td></tr><tr><td>AVERAGEA</td><td>引数で指定した値の平均値を返します。論理値も対象となります。</td><td>7</td></tr><tr><td>AVERAGEIF</td><td>条件にあったセルの値の平均を返します。</td><td>8</td></tr><tr><td>AVERAGEIFS</td><td>複数の条件に合った数値の平均を返します。</td><td>9</td></tr><tr><td>COUNT</td><td>指定したセル範囲の数値のみの個数の合計を返します。</td><td>10</td></tr><tr><td>COUNTA</td><td>指定したセル範囲の数値、文字列などの個数の合計を返します。</td><td>11</td></tr><tr><td>COUNTBLANK</td><td>指定したセル範囲の未入力データの合計を返します。<br>空白をカウントする場合はCOUNTBLANK関数をお使いください。<br>詳細は<mark style="color:violet;">、</mark>「<a href="/pages/OZn7fNQdCjsYqMpzR3wv">COUNTBLANK関数について</a>」をご参照ください。</td><td>12</td></tr><tr><td>COUNTIF</td><td>指定したセル範囲のうち、検索条件に一致するデータの個数を返します。</td><td>13</td></tr><tr><td>COUNTIFS</td><td>指定したセル範囲のうち、検索条件をすべて満たすデータの個数を返します。<br><mark style="color:red;">※下記バージョンでご利用いただけます。</mark><br>　<mark style="color:red;">i-Repo Designer：8.2.26060 以降</mark><br>　<mark style="color:red;">iOS版i-Reporterアプリ：8.2.26060 以降</mark><br>　<mark style="color:red;">Windows版i-Reporterアプリ：6.2.26060 以降</mark></td><td>14</td></tr><tr><td>MAX</td><td>引数で指定した値から最大値を返します。</td><td>15</td></tr><tr><td>MAXA</td><td>引数で指定した値から最大値を返します。論理値も対象となります。</td><td>16</td></tr><tr><td>MEDIAN</td><td>引数で指定した値から中央の値を返します。</td><td>17</td></tr><tr><td>MIN</td><td>引数で指定した値から最小値を返します。</td><td>18</td></tr><tr><td>MINA</td><td>引数で指定した値から最小値を返します。論理値も対象となります。</td><td>19</td></tr><tr><td>MODE</td><td>引数で指定した値から最頻値を返します。</td><td>20</td></tr><tr><td>PERCENTRANK</td><td>引数で指定した配列またはセル範囲で順位を百分率で表した値を返します。</td><td>21</td></tr><tr><td>STDEV</td><td>引数を正規母集団の標本と見なし、標本に基づいて母集団の標準偏差の推定値を返します。</td><td>22</td></tr><tr><td>STDEVA</td><td>引数を正規母集団の標本と見なし、標本に基づいて母集団の標準偏差の推定値を返します。 論理値も対象となります。</td><td>23</td></tr><tr><td>STDEVP</td><td>引数を母集団全体と見なし、母集団の標準偏差を返します。</td><td>24</td></tr><tr><td>STDEVPA</td><td>引数を母集団全体と見なし、母集団の標準偏差を返します。論理値も対象となります。</td><td>25</td></tr></tbody></table>

### **数学関数**

数学関数は合計値などの四則演算、数値の桁丸めや階乗などを計算することができます。

<table><thead><tr><th width="154"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>ABS</td><td>数値の絶対値を返します。</td><td>26</td></tr><tr><td>ROUND</td><td>指定した桁数で数値を四捨五入します。</td><td>27</td></tr><tr><td>ROUNDDOWN</td><td>指定した桁数で数値を切り捨てます。</td><td>28</td></tr><tr><td>ROUNDUP</td><td>指定した桁数で数値を切り上げます。</td><td>29</td></tr><tr><td>SUM</td><td>指定した数値またはセルの範囲の値を合計します。</td><td>30</td></tr><tr><td>SUMIF</td><td>指定した条件に一致するセルの値を合計します。</td><td>31</td></tr><tr><td>SUMIFS</td><td>指定した複数の条件にあった数値を合計します。</td><td>32</td></tr><tr><td>SQRT</td><td>数値の正の平方根を求める関数です。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer) ：8.0.21050 以降<br>　iOS版i-Reporterアプリ：8.0.21050 以降<br>　Windows版i-Reporterアプリ：5.2.21050 以降<br>※チェッククラスターは計算対象にできません。</td><td>33</td></tr><tr><td>POWER</td><td>べき乗を計算する関数です。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer) ：8.1.24040 以降<br>　iOS版i-Reporterアプリ：8.1.24040 以降<br>　Windows版i-Reporterアプリ：5.2.24040 以降</td><td>34</td></tr></tbody></table>

### **検索・行列関数**

検索・行列関数はワークシート内のデータを検索する際に使用します。

<table><thead><tr><th width="130"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>LOOKUP</td><td>指定範囲を縦方向に検索し、検索値と同じ位置にある対応範囲のセルの値を返します。<br>※横方向の検索には未対応です。</td><td>35</td></tr><tr><td>VLOOKUP</td><td>指定範囲を縦方向に検索し、検索値に合致した場合、指定した列番号にある値を返します。<br>※横方向の検索には未対応です。</td><td>36</td></tr><tr><td>AREAS</td><td>参照で指定したセル範囲の領域の個数を返します。</td><td>37</td></tr></tbody></table>

### **日付・時刻関数**

日付・時刻関数は日付・時刻計算を行う際に使用します。

<table><thead><tr><th width="118"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>YEAR</td><td>指定した日付(シリアル値)の「年」を返します。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer) ：8.2.26020 以降<br>　iOS版i-Reporterアプリ：8.2.26020 以降<br>　Windows版i-Reporterアプリ：6.2.26020 以降</td><td>38</td></tr><tr><td>MONTH</td><td>指定した日付(シリアル値)の「月」を返します。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer)：8.2.26020 以降<br>　iOS版i-Reporterアプリ：8.2.26020 以降<br>　Windows版i-Reporterアプリ：6.2.26020 以降</td><td>39</td></tr><tr><td>DAY</td><td>指定した日付(シリアル値)の「日」を返します。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer)：8.2.26020 以降<br>　iOS版i-Reporterアプリ：8.2.26020 以降<br>　Windows版i-Reporterアプリ：6.2.26020 以降</td><td>40</td></tr><tr><td>EDATE</td><td>指定した開始日の、数か月後または数カ月前の日付を返します。<br>※下記バージョンでご利用いただけます。<br>　i-Repo Designer(ConMas Designer)：8.0.22020 以降<br>　iOS版i-Reporterアプリ：8.0.22020 以降<br>　Windows版i-Reporterアプリ：5.2.22020 以降</td><td>41</td></tr></tbody></table>

### **文字列操作関数**

文字列を指定した形式に変換したり、文字列の一部を抜き出したりする時に使用します。

<table><thead><tr><th width="163"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>ASC</td><td>全角文字列を半角文字列に変換します。</td><td>42</td></tr><tr><td>CONCATENATE</td><td>引数で指定した複数の文字列または数値を結合します。</td><td>43</td></tr><tr><td>LEFT</td><td>文字列の左端から指定した数の文字を返します。</td><td>44</td></tr><tr><td>LEN</td><td>指定した文字列の文字数を返します。</td><td>45</td></tr><tr><td>MID</td><td>文字列の指定した開始位置から指定した文字数分の文字列を返します。</td><td>46</td></tr><tr><td>RIGHT</td><td>文字列の右端から指定した数の文字を返します。</td><td>47</td></tr></tbody></table>

## **年月日/時刻の計算について**

年月日および時刻はシリアル値で計算を行います。

### **シリアル値とは**

1900年1月1日を「1」とし、その日からの通算日数と時刻を数値として表したものです。\
数値の「1」は1日として計算され、時刻は「1」を24時間に換算した小数値で表します。

<table><thead><tr><th width="176">年月日</th><th width="250">シリアル値</th></tr></thead><tbody><tr><td>1900年1月1日</td><td>1</td></tr><tr><td>1900年1月5日</td><td>5</td></tr><tr><td>2015年1月1日</td><td>42005</td></tr></tbody></table>

<table data-full-width="false"><thead><tr><th width="178">時刻</th><th width="250">シリアル値</th></tr></thead><tbody><tr><td>0時0分0秒</td><td>0.0</td></tr><tr><td>12時0分0秒</td><td>0.5</td></tr><tr><td>21時0分0秒</td><td>0.875</td></tr></tbody></table>

### **年月日/時刻の計算結果表示**

年月日および時刻の計算はシリアル値で行うため、計算結果もそのままではシリアル値となり、数値として表示されます。\
そこで、計算式クラスターの「入力パラメータ設定」画面にある「計算結果データ型」設定を使用します。\
「計算結果データ型」を「年月日・時刻」に設定することで、計算結果を指定した年月日または時刻の書式で表示することができます。

{% hint style="info" %}
「計算結果データ型」について、詳細は「[計算結果データ型](#dta)」をご参照ください。
{% endhint %}

【例】

年月日「2015年01月10日」のシリアル値は「42014」です。そこに10を足すと、計算結果には数値「42024」が表示されます。\
計算結果を表示する計算式クラスタ―の「計算結果データ型」を「年月日・文字列」設定にすることで、「2015年01月20日」が表示されるようになります。

<div align="left"><figure><img src="/files/soaloTX8M2NnzEw5V9Sy" alt=""><figcaption></figcaption></figure></div>

## **計算結果データ型**

計算結果データ型の設定には、「その他」 「年月日・時刻」 「文字列」の3種類があります。\
それぞれの表示は以下の仕様となります。

#### **その他**

従来と同じ計算結果表示を行います。「年月日・時刻」や「文字列」といった明確な表示指定が特にない場合に指定します。\
計算結果を自動判定し、文字列または数値として表示します。\
そのため、数値に変換可能な文字列は、実体が文字列であっても数値として表示します。\
また、論理値はそれぞれTrue=1、False=0の数値として表示します。

#### **年月日・時刻**

計算結果となる数値をシリアル値計算し、指定した書式で年月日/時刻として表示します。\
計算結果が文字列など、年月日・時刻に変換できない値だった場合はエラーとなります。

#### **文字列**

計算結果を強制的に文字列として表示します。\
計算結果が論理値だった場合、「true」または「false」という文字列で表示されます。\
計算結果が数値であり、1.666666…の様に無限に続く様な小数値だった場合、ConMas Designerで設定した計算式クラスターの小数点以下桁数の設定で丸めた上で文字列に変換して表示します。

## **Excel計算式における ConMas i-Reporterの仕様制限**

ExcelとConMas i-Reporterで計算式または計算結果表示の仕様が一部異なることがあります。\
以下にConMas i-Reporterの仕様制限をまとめます。

{% hint style="warning" %}
こちらに記載された内容以外に、関数ごとに使用制限や注意事項があります。\
各関数の詳細ページも併せてご参照ください。
{% endhint %}

&#x20;

### **「計算式」が「=#REF」 と表示される場合**

ConMas DesignerへのExcel帳票定義ファイル取り込み時に計算式が不正と判定された場合、計算式クラスタ―の「入力パラメータ設定」画面 ＞「計算式」には 「#REF」 と表示されます。\
この状態で帳票定義をConMas Designerからサーバーへ保存しようとすると、エラーになり保存できません。

<div align="left"><figure><img src="/files/EpQ7GImsQpzsVnFDwGY1" alt="" width="533"><figcaption></figcaption></figure></div>

### **計算式に含まれるセルはクラスター設定が必要**

計算式クラスターにおいてExcel上でクラスター設定がされていないセルを含む計算式は、ConMas DesignerへのExcel取り込み時に 「#REF」 表示となります。\
計算式に含まれるセルはExcel上でクラスター設定しておく必要があります。

<div align="left"><figure><img src="/files/d7qcszoABZ6kQj2RSTkc" alt=""><figcaption></figcaption></figure></div>

#### **クラスター設定していないセル情報を取り込めるパターン**

計算式に含まれるセルはクラスター設定されている必要がありますが、例外として、下記一部のExcel関数の引数に限り、クラスター設定をしなくてもセルの値をConMas i-Reporterに取り込むことが可能です。

**対象EXCEL関数**

* LOOKUP
* VLOOKUP
* AVERAGEIF
* AVERAGEIFS
* COUNTIF
* SUMIF
* SUMIFS　

{% hint style="success" %}
上記EXCEL関数の引数のうち、範囲指定を行う引数にあたるセルはクラスター設定する必要がありません。\
（あえてクラスター設定しておく事も可能です。）
{% endhint %}

【例】\
以下の図で、赤枠で囲んだ範囲（関数内の引数のうち、範囲指定を行っている箇所）のセルはクラスター設定をしなくてもセル値のデータをConMas i-Reporterへ取り込むことが可能です。\
範囲指定箇所が別シート内や印刷設定範囲外にあっても問題ありません。

<div align="left"><figure><img src="/files/IbGqwpyOnZCTHRE4MVKr" alt=""><figcaption></figcaption></figure></div>

### **計算式に含めることが不可であるクラスター種別**

計算式に含めることができないクラスター種別があります。\
以下のクラスター種別が計算式に含まれていた場合は、クラスター設定されたセルであってもConMas DesignerへのExcel取込み時に計算式が「#REF」表示となり、正常に取り込めません。

#### **計算式に使用できないクラスター種別**

* 手書きノート形式
* 手書きフリーメモ
* フリードロー
* 画像
* 作成
* 査閲
* 承認
* アクション
* ピン打ち
* ピンNo.配置
* ピンNo.
* 録音
* SCANDIT
* EdgeOCR

### **文字列は数値として扱われない**

ConMas i-Reporterでは、キーボードテキストクラスターをはじめとする文字列を扱うクラスター種別を計算式に含めた場合、数値としては扱われません。\
そのため、キーボードテキストクラスターなどで数値を入力しても、数値ではなく文字列として扱われ、数値計算では無視されます。\
LEFT、RIGHTなど、文字列を扱う計算式にて有効となります。

単一選択クラスター、QRコードクラスターに関しては、「数値として扱う」設定にした場合に限り、値を文字列ではなく数値として扱いますので数値計算に含めることが可能になります。\
ただし、値が数値変換できない文字列だった場合は数値計算から無視されます。

<div align="left"><figure><img src="/files/lejDXppDRWUEQAZbg0k6" alt=""><figcaption></figcaption></figure></div>

### **数式エラーの扱い**

Excelでは計算結果がエラーとなった場合に、「#DIV/0!」 「#REF!」 「#NAME?」 「#N/A」 「#NULL!」 「#VALUE!」 など、エラーの内容に応じたエラー表示となりますが、i-Reporterでは、すべて 「!数式エラー」として表示されます。

<div align="left"><figure><img src="/files/I5h8pq0MGO7M773jcEZx" alt=""><figcaption></figcaption></figure></div>

### **トグル選択クラスターの扱い**

トグル選択クラスターは各ラベルに対して数値を設定できるクラスターであり、内部値として、文字列（ラベル）と数値（値）を両方持つ特殊なクラスターです。\
そのため、トグル選択クラスターを計算式で扱う際は使用するEXCEL関数によって、文字列として扱う場合と、数値として扱う場合があります。

* 文字列として扱う場合は「ラベル」を使用します。
* 数値として扱う場合は「値」を使用します。
  * 未入力状態のトグル選択クラスターを数値で扱う場合は「0」と判定されます。

<div align="left"><figure><img src="/files/TO92xMxGnsE4e3yZ2WR3" alt="" width="420"><figcaption></figcaption></figure></div>

#### **トグル選択クラスターを文字列として扱う関数**

下記関数ではトグル選択クラスターを文字列として扱うため、「ラベル」が使用されます。

* IF
* ASC
* CONCATENATE
* LEFT
* LEN
* MID
* RIGHT

#### **ラベル値、値、どちらを使って計算を行うか設定できる関数**

下記関数では、トグル選択クラスターを文字列として扱うか、数値として扱うかを設定できます。

* COUNTIF
* COUNTIFS
* AVARAGEIF
* SUMIF
* AVARAGEIFS
* SUMIFS

設定変更は、i-Repo Managerの「システム管理」 ＞ 「共通マスター管理」で行います。

* 共通キー　　　”TABLET\_SETTING”
* 共通項目名称　”USE\_CALCULATE\_TOGGLE\_STRING\_VALUE”
* 共通項目値　　”0”：文字列として扱う（ラベルを参照する）、 ”1”：数値として扱う（値を参照する）

{% hint style="warning" %}
本設定は、環境内の全ての帳票定義に適用されます。
{% endhint %}

### **チェッククラスターは常にTrueまたはFalse**

ConMas i-Reporterではチェッククラスターに関して未入力状態を「False」として扱います。\
そのため、計算式内に含められたチェッククラスターは常に「True」か「False」の値を持っています。\
例として、COUNTA関数などでチェッククラスターは常にカウントされる状態となります。

<div align="left"><figure><img src="/files/fUaXDqxd4oQDFEsFksa0" alt="" width="563"><figcaption></figcaption></figure></div>

### **文字列としての「TRUE」または「FALSE」**

EXCELと異なりi-Reporterではデータ型の自動変換を行いません。\
文字列として「TRUE」または「FALSE」を指定した場合、bool型としてのTRUEまたはFALSEとは別物であると判定します。\
対して、EXCELは文字列として「TRUE」または「FALSE」を指定した場合でも、計算式の内容によっては自動でbool型に変換される場合があります。\
この違いのため、「TRUE」または「FALSE」を絡めた計算式では、i-ReporterとEXCELとで計算結果が異なる場合があります。

<div align="left"><figure><img src="/files/viHyPelKL2IVjOlwQouM" alt=""><figcaption></figcaption></figure></div>

{% hint style="warning" %}
現在、Windows版アプリでは計算結果データ型を「文字列」に指定していてもTRUE/FALSEをbool型として扱っている現象が発生しています。\
このため、計算式によってはiOS版アプリとWindows版アプリとで計算結果に差異が出る場合があります。
{% endhint %}

### **計算式内に記述された日時の扱い**

計算式に直接記述された日時は、文字列として扱われます。\
入力帳票上の年月日クラスターなどは日時の値をシリアル値として扱っているため、計算式内の日時との比較はできません。

### **計算式内の比較演算子の扱い**

検索条件が存在する計算式で、検索条件をクラスター参照とした場合、i-Reporterでは `"="(参照クラスターの値)`  として扱われます。\
そのため、クラスター参照を使用する場合は、検索条件に `“>="` `“>"` `“<"` `“<="` `“<>"` 演算子を使用できません。

【例】\
クラスター参照で「>2」を参照した場合、計算式内での扱いは「=">2"」となり、「文字列としての">2"と同じであるか」という条件になります。\
これを、「2以上」として扱うことはできません。

`“>="` `“>"` `“<"` `“<="` `“<>"`を計算式に直接記述した場合はその記号の通りに使用できます。

{% hint style="success" %}
ただし、COUNTIFS関数のみ、参照先クラスターに記述した`“>="` `“>"` `“<"` `“<="` `“<>"`の条件を使用できます。

詳細は、「COUNTIFS関数について ＞ 検索条件をセル参照（クラスター参照）とする場合の注意」をご参照ください。
{% endhint %}

### **未入力判定について**

i-Reporterにおいて文字列比較は文字列型同士でなければ比較できませんが、例外として、下記のように、IF関数を用いて条件式で空文字と比較することで、文字列型に限らず対象のクラスターが未入力であるかどうかを判定させることができます。

{% hint style="success" %}
【例】\
IF(S1C1=“”,“未入力”,“入力済”) ※S1C1は対象となるクラスター
{% endhint %}

ただし、i-Reporterにおいては「空文字」と「未入力」の区別をつけることはできないため、いずれも未入力として判定されます。\
また、この方法で未入力判定が可能なクラスターは、チェッククラスター以外の計算式対象にできるクラスター種別に限ります。\
また、IF関数以外では空文字比較による未入力判定はできません。

{% hint style="warning" %}
EXCELではbool型のFALSEと比較して文字列や数値の未入力判定を行うことができますが、i-Reporterではデータ型を自動変換しないため、FALSEとの比較による未入力判定は行えません。
{% endhint %}

### **セルの範囲指定に結合セルが含まれる場合**

AVERAGEIF、AVERAGEIFS、COUNTIF、SUMIF、SUMIFS、LOOKUP、VLOOKUP 関数について、セルの範囲指定に結合セルが含まれる場合、すべての結合セル内のセル数を合わせていただく必要があります。\
これが不一致の場合は正常な計算結果が得られません。

**【OK例】**\
　「性別」「年齢」の結合セル内のセル数が8個ずつで一致している。

<div align="left"><figure><img src="/files/L4ch948b6LqoMlxz6BQ8" alt=""><figcaption></figcaption></figure></div>

**【NG例】**\
　「性別」の結合セル内のセル数は8個、「年齢」の結合セル内のセル数は12個で、一致していない。

<div align="left"><figure><img src="/files/MW0W1xANsdGIYI1DOFpf" alt=""><figcaption></figcaption></figure></div>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://manuals.i-reporter.jp/create-a-form/prepare-the-formexcelfile/excelfunctions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
