vba - 简单的 VBA 代码:用文本填充单元格是空的
问题描述
这仅用于学习目的。我在下面有这段代码。我希望该程序会检查从 1 到 999 的每个单元格。如果单元格为空,它将用文本填充它。这段代码没有发生任何事情:
Sub Makro1()
'
' Makro1 Makro
'
Dim iRow As Integer
Dim iRowEmpty
On Error Resume Next
'//Your Line here which causes 1004 error
If Err.Number > 0 Then
Debug.Print Err.Number & ":" & Err.Description
End If
i = 0
iRowEmpty = Rows(i, 1)
Do Until i = 999
i = i + 1
iRowEmpty = Rows(i, 1)
If IsEmpty(iRowEmpty) = True Then
iRowEmpty.Value = "Text..."
End If
Loop
MsgBox ("The End")
'Note: Debug shortcut keys i use in PC: Step Into (F8), Step Over (Shift + F8), Step Out (Ctrl + Shift + F8)
End Sub
电子表格有 1 列数据,在大多数情况下,每隔一个单元格都是空的。
解决方案
第一:如果你想检查单元格,那么你应该使用
Cells(i,1)
第二: iRowEmpty 只是 Cell 的副本,而不是直接引用,因此您应该使用
Cells(i,1).Value = "Text..."
将值分配给单元格。
所以最后你有这样的东西
i = 0
Do Until i = 999
i = i + 1
If IsEmpty(Cells(i, 1)) = True Then
Cells(i, 1).Value = "Text..."
End If
Loop
希望这可以帮助。
编辑:
澄清:
句法
Microsoft Excel 中 ISEMPTY 函数的语法为:
IsEmpty(值)
价值
您要测试的值。如果 value 是空白单元格或未初始化的变量,则此函数将返回 TRUE。否则,该函数将返回 FALSE。
适用于:
Excel 2016、Excel 2013、Excel 2011 for Mac、Excel 2010、Excel 2007、Excel 2003、Excel XP、Excel 2000
取自:TechOnTheNet
推荐阅读
- javascript - TypeError: (0 , _index.default) 在使用 Babel 作为 Rollup 包中的库时不是函数
- python - Plesk + Python Flask - 在第二个网站上配置代理不起作用
- firebase - 如何在 2 个 vue-native 应用程序之间进行通信
- java - 从 OPC 服务器循环收集数据
- awk - 用字符替换特定列中的空格
- rust - Rust:如何限制 Iterator::next() 的生命周期?
- amazon-web-services - 启用 iam DB 授权的 Neptune 中的全文搜索查询执行问题
- java - 在使用 FileInputStream 对 main 方法使用 Junit 测试时使用 assertThrows
- reactjs - 映射列表时如何显示正确的工具提示文本?
- java - 如何在android 10中通过意图共享图像