网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月14日漏签0天
excel吧 关注:281,075贴子:1,547,325
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 3回复贴,共1页
<<返回excel吧
>0< 加载中...

代码显示下标越界哪错了

  • 只看楼主
  • 收藏

  • 回复
  • 安沪
  • 开卷有E
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
第一张是数据,想按照管理单位分成3个表,但是代码标黄的地方显示下标越界,请大神帮忙看看,怎么改



  • 閃電旋風
  • E览无余
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
copy 后面那个应给是sheets(ng)而不是sheets("ng"),因为根本没有名叫ng的工作表


北京勤哲软件技术
勤哲Excel服务器2025学习和下载。用Excel自动生成excel做报表及手机app.软博会金奖产品,适合于各行各业的管理人员使用。
2025-05-14 16:01广告
立即查看
2025-05-14 16:01:23
广告
  • 战争之王黄仁勋
  • 日新月E
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
用range复制方法的话又没有用筛选的话以下两种
注意拆分1是多重选定区域,所以复制的是值而不会复制公式,拆分2是多次复制单一区域,所以会复制公式,如果你的数据没有公式那么两个是没有区别的。至于效率没有测试,估计慢得差不多。
Sub 拆分1()
Dim rng As Range, s As String, ng As Range, r As Range, i As Long
With Worksheets("总表")
Set rng = .Range("A1").CurrentRegion
For Each ng In .Range("M2:M4")
s = ng.Value
Worksheets.Add(, Sheets(Sheets.Count)).Name = s
Set r = rng.Rows(1)
For i = 2 To rng.Rows.Count
If rng.Cells(i, 1) = s Then Set r = Union(r, rng.Rows(i))
Next i
r.Copy Worksheets(s).Cells(1)
Next ng
End With
End Sub
Sub 拆分2()
Dim rng As Range, s As String, ng As Range, i As Long, j As Long
Set rng = Worksheets("总表").Range("A1").CurrentRegion
For Each ng In Worksheets("总表").Range("M2:M4")
s = ng.Value
With Worksheets.Add(, Sheets(Sheets.Count))
.Name = s
j = 2
rng.Rows(1).Copy .Cells(1)
For i = 2 To rng.Rows.Count
If rng.Cells(i, 1) = s Then rng.Rows(i).Copy .Cells(j, 1): j = j + 1
Next i
End With
Next ng
End Sub


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 3回复贴,共1页
<<返回excel吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示