Excel精英培训网

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

[已解决]为什么这段复制与更新的代码受到行数的限制?

[复制链接]
发表于 2013-6-4 08:00 | 显示全部楼层 |阅读模式
本帖最后由 c888 于 2013-6-4 09:07 编辑

为什么这段复制与更新的代码受到行数的限制?
更新或者重新录入数据(VBA).zip (24.92 KB, 下载次数: 6)
发表于 2013-6-4 08:25 | 显示全部楼层    本楼为最佳答案   
Sub 复制()
    If Sheet1.[D9] = "" Then MsgBox "目前没有数据需要生成!": Exit Sub
    Dim i As Integer   
    On Error Resume Next
    With Sheets("2")
        For i = 2 To .Range("A65536").End(xlUp).Row
            If .Range("A" & i) = Sheet1.[D9] Then
                x = i
                Exit For
            End If
        Next i
        If x = 0 Then
            Sheets("1").Range("D9:N9").Copy .Range("A65536").End(xlUp)(2, 1)
            MsgBox "数据已录入,请进行数据保存!"
        Else
            Sheets("1").Range("D9:N9").Copy .Range("A" & x)
            MsgBox "数据已更新,请进行数据保存!"
        End If
    End With
End Sub
回复

使用道具 举报

发表于 2013-6-4 08:27 | 显示全部楼层
你原来的变量设置为:
Dim i As Byte
Byte 的范围是  0 到 255
回复

使用道具 举报

发表于 2013-6-4 08:32 | 显示全部楼层
Dim i As Integer   
定义为整形,当数据量足够大时还是会受到限制可以定义
dim i as double(或者直接dim i)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-28 17:37 , Processed in 0.779664 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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