excel - 直到 i = 特定工作表中的编号单元格数
问题描述
我试图多次执行宏。我想根据特定工作表上特定列中包含数字的单元格数量来执行它。
我试图编写一个 do until 循环,但我收到“do until i =" 行的语法错误。
Sub copy_paste_to_first_blank_row()
Dim i As Integer
i = 1
Do Until i = COUNT(input!E:E)
Range("A1:D76").Select
Selection.Copy
Cells(Range("A1000000").End(xlUp).Row + 1, 1).Select
ActiveSheet.Paste
i = i + 1
Loop
End Sub
由于在我给定的情况下 count(input!E:E) = 93,我希望循环运行 92 次然后停止。尝试运行时收到错误消息“编译错误:语法错误”;它突出显示“直到”行。
...
现在我试过了
Dim i As Integer, x As Integer
Worksheets("input").Activate
x = Range("E:E").Count
i = 1
Do Until i = x
Range("A1:D76").Select
Selection.Copy
Cells(Range("A1000000").End(xlUp).Row + 1, 1).Select
ActiveSheet.Paste
i = i + 1
Loop
我收到错误“运行时错误'6':溢出”。
解决方案
Integer
是 16 位有符号整数类型,所以它可以取的最大值是 32,767。任何大于此值的都会引发溢出运行时错误。
通过将行号声明为Long
32 位有符号整数类型来修复它,其最大值远远超出 Excel 工作表上的行数。
推荐阅读
- mysql - MYSQL触发器从垂直创建水平表
- php - WooCommerce 自定义在 PHP 7.2 但不是 7.0 中中断页面
- python - 如何在 Python 中从路径中读取文件
- cumulocity - Cumulocity : 我可以创建一个新角色及其权限
- c# - C#串口通信中的await事件和超时
- android - 在 C# 中获取在 android 设备上的用户凭据下安装的用户证书
- jquery - 使用 highlight.js 和 jquery 在网页上显示 Python 代码
- sql - 从邮递员推送数据时,sql触发器不起作用
- selenium-webdriver - 如何使用 C# 单击 Selenium WebDriver 中不可见的元素?
- android - 不能使用 Firebase 广告:没有静态方法 zzc(Landroid/os/Bundle;