计算公式应用场景一
SurveyMars 计算公式功能让目标题目可根据其他题目或系统字段自动计算或赋值,支持多选题正选、反选、引用选项填空内容、默认值参与计算等,减少重复设置,提升问卷逻辑配置效率。点击查看示例
功能概述
计算公式用于在编辑时或作答时,根据已有题目答案或系统字段,自动为当前题目赋值或计算。三种典型应用包括:根据上一题多选题选中项自动选中/反选当前题选项、将填空题或选项填空内容引用到其他题目、以及让默认值参与运算(如 q2=[q1]+1 时,若第 1 题默认值为 10,则第 2 题显示 11)。
访问入口
在问卷编辑页选中目标题目,在右侧题目设置中找到「计算公式」设置区域,即可配置公式。

使用步骤
一、多选题正选(根据上一题自动选中相同选项)
1. 在目标多选题的题目表达式中输入公式,例如 q2 = [q1]。

2. 系统会以数组形式读取 [q1] 的选中项,与当前题 q2 的选项逐条比对;若选项文字完全一致,则自动选中。目的:避免逐项写多个公式,一次公式即可完成「正选」联动。

3. 确保 [q1] 与 q2 的选项文案完全一致,否则无法自动匹配选中。
二、多选题反选(根据上一题自动选中未选选项)
1. 在目标多选题的题目表达式中输入公式,例如 q3 = [q1_reverse]。
2. 系统会读取 [q1] 的选中项,与当前题选项对比,自动圈选 q1 中未选中的选项。目的:实现「反选」逻辑,无需为每个选项单独写公式。

3. 同样需保证 [q1] 与 q3 的选项文字完全一致;若 q1 没有某选项,则 q3 中对应选项不会被选中。
三、引用选项允许填空的内容
1. 在来源题目中开启「选项允许填空」;在目标题目的计算公式中引用填空内容时,使用 [q1_1_text] 形式(题号与填空序号按实际题目填写)。
2. 例如设置 q5 = [q4_7_text],作答者选择“第4题第7个选项”并填写填空后,目标题将展示为「选项文案,填空内容」。

四、默认值参与计算
1. 为来源题目设置默认值(填空题设置默认值、选择题设置默认选项)。
2. 在目标题目中设置计算公式,例如 q7 = [q6]*3;若 [q1] 的默认值为 10,则作答页加载后即可看到 q7 计算结果为 30,无需用户先作答第 6 题。

配置选项详解
题号引用格式:公式中引用其他题目时,题号需用中括号包裹,如 [q1]、[q2];使用 CONCATENATE 等函数时,题号也需带中括号。
SEARCH / FIND 等函数:查找关键字需使用英文双引号,如 FIND("蓝色",[q1]);使用单引号可能导致保存后公式异常或作答时不生效,建议统一使用英文双引号。
切换题型:切换题目类型会清空当前题已设置的计算公式;系统会弹出二次确认,提示「切换题型后会清空计算公式,是否继续」,确认后再执行切换,避免误操作丢失公式。
重要提示
- 正选 [q1] 与反选 [q1_reverse] 要求来源题与目标题的选项文字完全一致,否则无法正确匹配。
- 引用选项填空内容请使用 [q1_1_text] 等形式,题号与填空序号需与题目实际设置一致。
- 公式中的关键字、分隔符等建议统一使用英文双引号,避免单引号导致保存或作答异常,例如 IF([q3]=="黄色",1,0),避免公式报错或作答未生效。
常见问题
问:切换题型后,原来的计算公式会怎样?
答:切换题型会清空该题已配置的计算公式。系统会先弹出确认框提示「切换题型后会清空计算公式,是否继续」,点击确认后才会清空并切换,请根据需要选择是否继续。
问:公式里引用题号或关键字时,用单引号还是双引号?
答:建议统一使用英文双引号。SEARCH、FIND 等函数的查找关键字、以及 TEXTSPLIT 的分隔符,若使用单引号可能导致保存后显示异常或作答时公式不生效;常用公式示例中已按双引号规范展示。
问:正选 q2=[q1] 或反选 q3=[q1_reverse] 不生效,可能是什么原因?
答:请检查来源题与目标题的选项文字是否完全一致(包括空格、标点)。正选/反选依赖选项文案逐条比对,不一致则无法自动选中;此外,若来源题没有某个选项,反选时目标题中对应选项也不会被选中。