You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Google Form多选项组合映射为唯一十进制数?

Google Form 选项组合转唯一十进制数解决方案

一、能否让Google Form自动输出该十进制数?

Google Form本身不支持直接生成这种映射的十进制数,但可以通过联动Google Sheets实现自动计算输出——表单提交的所有数据会实时同步到关联的Sheets表格,你可以在Sheets中用公式完成选项到十进制数的转换。

二、具体实现步骤

1. 关联表单到Google Sheets

打开你的Google Form,点击右上角「回应」标签页,再点击「链接到表格」,选择新建或已有的Sheets表格,提交的表单数据会自动同步到这里。

2. 给每个选项分配二进制权重

为了保证每个选项组合对应唯一十进制数,给每个选项分配一个2的幂次权重(比如第一个选项对应2^0=1,第二个对应2^1=2,第三个2^2=4,以此类推)。单选问题中同一时间只有一个选项会被标记为1,多选问题则可以有多个1,最终所有选中选项的权重相加就是唯一的十进制数。

3. 在Sheets中编写公式计算

假设你的表单数据在Sheets的A列到D列:

  • A列:时间戳
  • B列:单选问题「选择你的年龄组」(选项:Q1A、Q1B、Q1C)
  • C列:多选问题「你进行的运动类型」(选项:Q2A、Q2B、Q2C)

首先在空白列(比如E到J列)生成每个选项的选中状态(1=选中,0=未选中):

  • E列(Q1A状态):=IF(B2="Q1A",1,0)
  • F列(Q1B状态):=IF(B2="Q1B",1,0)
  • G列(Q1C状态):=IF(B2="Q1C",1,0)
  • H列(Q2A状态):=IF(ISNUMBER(SEARCH("Q2A",C2)),1,0)
  • I列(Q2B状态):=IF(ISNUMBER(SEARCH("Q2B",C2)),1,0)
  • J列(Q2C状态):=IF(ISNUMBER(SEARCH("Q2C",C2)),1,0)

然后在K列计算最终的十进制数(给每个状态分配对应权重,相加即可):
=E2*32 + F2*16 + G2*8 + H2*4 + I2*2 + J2*1
这里的32、16、8、4、2、1分别对应Q1A到Q2C的权重(25到20),你可以根据选项数量调整权重值。

三、二进制转十进制的函数方案

如果先通过公式生成了完整的二进制字符串(比如把E到J列的状态拼接成100100),可以用Google Sheets的BIN2DEC()函数转换,比如:
=BIN2DEC(E2&F2&G2&H2&I2&J2)
但注意BIN2DEC()仅支持最长10位的二进制字符串,如果你的选项数量超过10个,建议直接用「权重相加」的方法,避免长度限制问题。

内容的提问来源于stack exchange,提问作者Ratan Prasad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 19:55:32