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

如何在Excel中生成逐行右移1的0和1数组?

Excel 生成逐行右移的0/1数组解法

核心思路

本质就是判断当前单元格的列位置和行号是否相等,相等就输出1,不相等输出0,以此实现每行的1逐列右移。

普通Excel版本(无动态数组功能)

从A1单元格开始操作:

  • 在A1输入公式:=IF(COLUMN()=ROW(),1,0)
  • 先向右拖动填充到你需要的最后一列(比如D列),再向下拖动到目标行数(比如第4行),就能得到你要的结果。

原理很直接:

  • ROW() 取当前单元格的行号(比如A2返回2)
  • COLUMN() 取当前单元格的列号(比如B1返回2)
  • 两者相等时输出1,否则0,刚好匹配每行1右移的需求。

Excel 365/2021(支持动态数组)

不用拖拽填充,一个公式直接生成整个数组:
在空白单元格(比如A1)输入:=IF(SEQUENCE(4,4,1,1)=TRANSPOSE(SEQUENCE(4)),1,0)
回车后自动生成4行4列的目标数组。

原理:

  • SEQUENCE(4,4,1,1) 生成4行4列的连续数字矩阵(每行都是1-4)
  • TRANSPOSE(SEQUENCE(4)) 把1-4的垂直序列转成横向,用来对应行号和列号的匹配
  • 两个矩阵对应位置相等时输出1,其余为0,直接生成目标样式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 23:07:06