EXCEL 批量隐藏行,比如每隔3行隐藏后2行

只显示1.4.7.10.。。。的行,其余隐藏再把另一个表的 1,2,3、、、行,粘贴到这个表的1,4,7、、、行;liangac007 ,谢谢你解决了隐藏的问题,我自己选的非空白,就隐藏了,跟你相反,不过是你指明的路;先复制,再用你的方法就隐藏了2.3,5.6,8.9...等行了;常山大宝: 能解释下这个公式吗? =IF(MOD(ROW(),3)=1,INDEX(Sheet1!$1:$65536,(ROUNDDOWN(ROW()⼀3,0)+1),COLUMN()),Sheet2!A1) ;MOD(ROW(),3)=1 是选择行数除以3的余数是1的行,比如1.4.7.。。是把?INDEX(Sheet1!$1:$65536 是选定1表所有单元格?其他的是什么?授人以鱼不如授人以渔,辛苦了我的2表里,是空的
2026年09月17日 03:13
有4个网友回答
网友(1):

你的想法很不错,可惜当粘贴的时候隐藏的行又跑出来啦。。
你是否想从另一个表中复制数据来覆盖当前表的1、4、7、10、...行呢?
如果是这样,你可以用下面的方法:
新建一个工作表,一般里面会有三个表格(工作簿),即“Sheet1、Sheet2和Sheet3”。假如你说的表在同一个工作表里面,可以不新建工作表。
把你说的“另一个表”复制到Sheet1;要替换数据的表复制到Sheet2
然后在Sheet3中的A1输入公式:
=IF(MOD(ROW(),3)=1,INDEX(Sheet1!$1:$65536,(ROUNDDOWN(ROW()/3,0)+1),COLUMN()),Sheet2!A1)
公式完成后,把公式向后、向下拖动复制,到你想要的格为止。比如:
你的表格到H列,那么向后复制公式到H列;而你的Sheet1有12行,那么向下复制公式到(12*3-2=34)行。至于Sheet2没有显示的行,你可以直接把他们复制到Sheet3的数据下面。
假如你想隐藏2.3,5.6,8.9...等行,手动做吧!这个没有好办法~~~

补充:
=IF(MOD(ROW(),3)=1,INDEX(Sheet1!$1:$65536,(ROUNDDOWN(ROW()/3,0)+1),COLUMN()),Sheet2!A1)
函数的意思是:
当前行号除以3余数为1时,返回表Sheet1的INDEX,否则返回表Sheet2!A1
INDEX是,表Sheet1!中的"行数为用当前行号除以3留整后加1,列号为当前列号"的单元格.
关于"你说的Sheet2是空的"问题:我上面提到了"把要替换数据的表复制到Sheet2"
另外一并解决隐藏问题:
1.你在Sheet3的A1单元格输入公式后,向后复制公式到没有数据的地方,然后
1).在后面第一个空白单元格输入公式
=IF(MOD(ROW(),3)=1,0,1)
意思:当行号除以3余数为1时返回0,否则返回1
1).在后面第二个空白单元格输入公式
=ROW()
意思:返回当前行号
2.选中第一行有公式的单元格区域,向下复制公式..
3.选择数据区域,排序,首要关键字为1)步骤所在列,升序,确定.
然后把是1的行选中,隐藏.再把1)和2)步骤所在列选中,隐藏.
4.当需要恢复隐藏时,先恢复隐藏的列和行,再排序,首要关键字选择2)所在列,升序,确定.接着隐藏1)和2)两列即可..

网友(2):

六步搞定这个问题:
1.靠近原有表格有内容的列插入两列,如A列和B列
2.A列依次在单元格填入1到200(这个不用教吧)
3.B列依次在单元格输入1 0 0,接着复制到下面的297个单元格
4.点选B1单元格,点击“降序排序”,1,4,7.。。都出来了
5.复制数据吧
6.点击A1单元格,点击“升序排序”,原有的顺序回来了。

网友(3):

呵呵,想法不错。这样就省事多了。
不过你说的我不会,希望高人指点。

不过看你的意思,那你可以用筛选的方法来快速粘贴数据。筛选出你需要的“行”,然后粘贴。也能快很多的。

网友(4):

简单一点方法是有的,你试试看(要求是你这个隐藏如你上面所说的是有规律的,基本是每隔一行隐藏两行):
1、在1.4.行最后一列各输入1,选中1-6行(两行数据,4行空白),向下托放到你的300行,
2\选中你的300行,含标题栏,数据-筛选-自动筛选后,在上面这列筛选空白,现看到结果是隐藏了1.4.7.10.......等
3\建立一个链接,在你要粘贴的内容开始输入=SHEET2!A2(A2指要复制内容),然后横向拖放一行,最后一步,选中所有筛选区域,编辑-填充-向下填充,就OK了.