Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2370|回复: 3

[已解决]删除每行数字大于等于15的行

[复制链接]
发表于 2014-12-7 08:20 | 显示全部楼层 |阅读模式
1、工作表1中有三个或者更多个表格
2、删除各表格每行数字大于等于15个的行,结果放到工作表2内(工作表2内是删除结果和格式)
最佳答案
2014-12-7 10:38
  1. Sub Macro1()
  2. Dim rng As Range, i&, j%
  3. Sheet1.Activate
  4. For j = 1 To 33 Step 16
  5.     Set rng = Cells(1, j).Resize(9, 15)
  6.     rng.Copy Sheet2.Cells(1, j)
  7.     For i = 1 To 9
  8.         If Application.CountA(Cells(i, j).Resize(1, 15)) = 15 Then Sheet2.Cells(i, j).Resize(1, 15) = ""
  9.     Next
  10. Next
  11. End Sub
复制代码

删除每行数字大于等于15的行.rar

12.51 KB, 下载次数: 22

发表于 2014-12-7 09:26 | 显示全部楼层
工作表“2”的A1单元格复制以下公式,横拉、下拉;
=IF(COUNTA(OFFSET('1'!$A1:$O1,,INT(COLUMN()/16)*16))=15,"",'1'!A1)&""
回复

使用道具 举报

 楼主| 发表于 2014-12-7 10:13 | 显示全部楼层
baksy 发表于 2014-12-7 09:26
工作表“2”的A1单元格复制以下公式,横拉、下拉;
=IF(COUNTA(OFFSET('1'!$A1:$O1,,INT(COLUMN()/16)*16) ...

不要这样的,要求写出代码
回复

使用道具 举报

发表于 2014-12-7 10:38 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1()
  2. Dim rng As Range, i&, j%
  3. Sheet1.Activate
  4. For j = 1 To 33 Step 16
  5.     Set rng = Cells(1, j).Resize(9, 15)
  6.     rng.Copy Sheet2.Cells(1, j)
  7.     For i = 1 To 9
  8.         If Application.CountA(Cells(i, j).Resize(1, 15)) = 15 Then Sheet2.Cells(i, j).Resize(1, 15) = ""
  9.     Next
  10. Next
  11. End Sub
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-27 03:38 , Processed in 0.295326 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表