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

Google Sheets实现宝可梦收藏表属性克制数据自动填充需求

解决方案

步骤1:调整隐藏工作表基础配置

先取消Misc Data工作表的隐藏,将A37:R37区域的表头图片全部替换为对应属性的纯文本,同时确认A38:A55列的防守属性文本拼写无错误,和「Collection」表F、G列填写的属性名完全一致。

步骤2:可选简化操作(定义命名范围)

点击顶部菜单栏「数据」-「命名范围」,新增一个名为type_chart的范围,值设置为Misc Data!A37:R55,后续写公式无需重复输入长串区域地址。

步骤3:对应列公式编写

假设「Collection」表表头在第1行,F列为第一属性、G列为第二属性,我们以第2行数据为例编写公式,其他行直接下拉填充即可。

Strong列(受到攻击时伤害系数<1的属性列表)

=TEXTJOIN("、",TRUE,
FILTER(
  INDEX(type_chart,1,2:COLUMNS(type_chart)),
  BYCOL(
    INDEX(type_chart,XMATCH(F2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart)) *
    IF(G2="none",1,INDEX(type_chart,XMATCH(G2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart))),
  LAMBDA(x,x<1))
))

Weak列(受到攻击时伤害系数>1的属性列表)

=TEXTJOIN("、",TRUE,
FILTER(
  INDEX(type_chart,1,2:COLUMNS(type_chart)),
  BYCOL(
    INDEX(type_chart,XMATCH(F2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart)) *
    IF(G2="none",1,INDEX(type_chart,XMATCH(G2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart))),
  LAMBDA(x,x>1))
))

Immune列(受到攻击时伤害系数=0的属性列表)

=TEXTJOIN("、",TRUE,
FILTER(
  INDEX(type_chart,1,2:COLUMNS(type_chart)),
  BYCOL(
    INDEX(type_chart,XMATCH(F2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart)) *
    IF(G2="none",1,INDEX(type_chart,XMATCH(G2,INDEX(type_chart,0,1)),2:COLUMNS(type_chart))),
  LAMBDA(x,x=0))
))

公式说明

  • XMATCH用于匹配F、G列属性在克制表首列的位置,取出对应属性的系数行
  • 第二属性为none时直接乘1,等效于仅计算单属性克制系数
  • BYCOL遍历相乘后的系数数组,匹配对应筛选条件
  • FILTER取出符合条件的表头属性名,TEXTJOIN将多个属性用顿号拼接为列表,无符合条件的属性时自动返回空值

兼容方案

如果你的Google Sheets版本不支持LAMBDA类函数,可以用QUERY+TRANSPOSE组合实现相同逻辑,核心匹配逻辑不变,仅写法更繁琐。如果公式返回错误,优先检查F、G列属性名和克制表首列的拼写是否完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 09:15:04