> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 使用公式函数常见问题

> 答：如果公式错误或者根据当前行无法计算出结果时，会在单元格中展示此类错误代码，具体代码的含义，请见公式错误代码列表。

<AccordionGroup>
  <Accordion title="写完公式后，单元格显示 #REF! 之类的错误，是怎么回事？">
    如果公式错误或者根据当前行无法计算出结果时，会在单元格中展示此类错误代码，具体代码的含义，请见[公式错误代码列表](/zh/aitable/formulas/error-codes)。
  </Accordion>

  <Accordion title="公式显示无效的可能原因？">
    有以下几种可能需要排查

    **符号问题**

    * 运算符号或括号非英文符号（如中文引号“”应改为英文引号""）。
    * 括号数量不匹配（如`IF(TRUE,0,1))` 缺少闭合符号）。

    **数据问题**

    * 引用字段被删除或不存在（如`SUM([字段A])` 中字段A缺失）。

    **格式问题**

    * 百分数需以小数形式参与计算（如10%应输入0.1）。

    **语法问题**

    * 运算符使用错误。

    **同步问题**

    * 同步前需确保数据格式已正确调整。
  </Accordion>

  <Accordion title="在AI表格公式中写公式，“不等于”如何表示？">
    在AI表格公式字段中写公式，**`!=`** 表示“不等于”。
  </Accordion>

  <Accordion title="AI表格公式中的空值如何表示？">
    可以在公式中直接输入 `= ""`**，或者使用**`ISBLANK()` 函数来判断单元格是否为空。
  </Accordion>

  <Accordion title="如何在AI表格公式中输入表情或符号？">
    * **Mac 系统**：在编写公式时，右键点击文本输入框，选择“表情符号与符号”，然后从中选取任意表情或符号即可。
    * **Windows 系统**：在编写公式时，同时按下**Win 键 + .（句号）**，打开表情符号键盘，从中选择任意表情或符号即可。
  </Accordion>

  <Accordion title="AI表格公式字段是否可以转换为其他字段类型？">
    支持转换。公式字段可以调整为文本字段、数字字段、多选字段、单选字段等类型，但仅保留计算后的结果。调整后，该字段将不再具备公式自动计算的能力。
  </Accordion>

  <Accordion title="如何将AI表格公式字段转换为其他字段类型？">
    右击标题选择编辑字段/列，在弹出的配置面板中，将“字段类型”调整为所需的其他类型即可。

    注意：

    * 公式字段调整为其他字段类型后，将失去公式自动计算的能力，仅保留调整后字段的特性；
    * 由于公式字段的返回值可能具有多种格式类型，因此在转换为其他字段类型后，可能会出现不适配的情况，请根据实际需求谨慎操作。
  </Accordion>

  <Accordion title="在AI表格公式字段中进行求和运算时，返回值为空或错误怎么办？">
    可能是字段类型不支持求和运算，当前无法对文本类型的字段进行求和操作。建议先将字段调整为数字类型后再尝试求和。
  </Accordion>

  <Accordion title="如何调整AI表格公式字段的返回值格式？">
    公式运算完成后，如需调整返回值的格式，可右击标题选择编辑字段/列，在数字格式中选择自己期待的格式。

    #### **问：如何修改公式字段的显示格式？**

    答：双击字段标题进入编辑模式，在 **数字格式** 下拉选项中选择需要的格式（如整数、小数、千分位、百分比、货币、日期等）。

    **支持格式：**

    * 数字类：整数、小数、千分位
    * 专业类：百分比、货币
    * 日期类：日期格式
  </Accordion>

  <Accordion title="`TEXT()`函数返回的文本在计算时出错怎么办？">
    `TEXT()` 函数返回的是文本格式，需通过`SUM()`、`ABS()` 等数值函数转换为数字后才能参与计算。
  </Accordion>

  <Accordion title="求和结果不正确的原因？">
    **字段类型错误**：仅支持数值或公式字段，文本字段需转换为数字。

    **精度问题**：小数位数过多时，建议调整为小数点后4 位 再次计算。
  </Accordion>

  <Accordion title="日期函数运算结果的数据格式？">
    * 存储格式：时间戳（如45071代表 2024-01-01）。
    * 显示格式：可通过字段设置调整为日期，但数据本质仍为时间戳。
    * 筛选规则：以数字逻辑处理（如 > 45071代表日期晚于 2024-01-01）。
  </Accordion>

  <Accordion title="文本拼接时日期显示为数字？">
    直接拼接会导致日期转为时间戳，需通过`TEXT()` 转换为文本。

    示例：`[姓名] & "的生日是" & TEXT([出生日期], "yyyy-mm-dd")`
  </Accordion>

  <Accordion title="公式结果应为日期却显示数字？">
    双击字段名，将格式设置为日期即可。
  </Accordion>

  <Accordion title="公式中如何表示“空值”？">
    * 直接判断：`[字段]= ""`
    * 使用函数：`ISBLANK([字段])`

      **示例：**

      `IF(ISBLANK([日期]), "为空", "不为空")`
  </Accordion>

  <Accordion title="`IFS()`函数返回`#N/A`的原因？">
    需添加兜底条件`TRUE`。

    **示例：**

    ```excel formula  theme={"theme":{"light":"github-light","dark":"github-dark"}}
    IFS(
     [成绩]=100, "满分",
     [成绩]>=85, "优秀",
     [成绩]>=75, "良好",
     [成绩]>=60, "及格",
     TRUE, "不及格"  // 必要的兜底条件
    )
    ```
  </Accordion>

  <Accordion title="如何计算特定工作日后日期？">
    使用`WORKDAY()` 函数，参数为起始日期、天数及可选节假日。

    语法：`WORKDAY(起始日期, 天数, [节假日数组])`

    示例：

    * `WORKDAY("2024/11/01", 10)` → 计算10个工作日后日期。
    * 若需自定义节假日，需先创建日期数组字段作为参数。
  </Accordion>

  <Accordion title="公式字段可引用的最大字段数？">
    单个公式字段最多可引用300 个字段。
  </Accordion>

  <Accordion title="如何按行进行基础运算？">
    新增公式字段。直接引用相关字段并添加运算符。  例如：`[字段1]+[字段2]*[字段3]`
  </Accordion>
</AccordionGroup>

### AI 表格 2.0 公式函数专区：

<AccordionGroup>
  <Accordion title="为什么字段看起来是“数字”，却无法进行“大于/小于”等数值判断？">
    **可能是因为您的公式“输出类型不统一”，导致数字变成了“文本”。**

    举个例子，如果您的**字段1** 公式是这样写的：IF( \[销量] > 0, \[销量], "暂无销量" )

    * **问题所在**：这个公式在满足条件时返回**数字**（如 100），不满足时返回**文本**（“暂无销量”）。
    * **系统的处理**：为了保证整列数据格式一致，系统会被迫“迁就”那个文本，把该字段里所有的数字也都当作**文本** 处理（即数字 100 变成了文本 “100”）。
    * **导致的后果**：当您在**字段2**引用**字段1**进行计算（如\[字段1] > 50）时，由于文本无法和数字进行数学比较，公式就会失效或得到错误结果。

    **✅ 如何解决？** 请确保 IF 函数的两个结果数据类型一致。

    * **错误写法**：IF(..., \[数字], "文本")
    * **推荐写法**：IF(..., \[数字], 0) （用 0 代替文本，保持全数字）
  </Accordion>
</AccordionGroup>
