我不是Excel我正在创建“自动表单填充机制”。到目前为止,一切都一切顺利,这要归功于Stackoverflow及其用户,对此非常感谢。我对项目的了解越深,它就会变得越复杂,因为我不是程序员,所以请确保对我来说……复制,粘贴和编辑现有代码是我大多数时候都知道的事情。
Excel工作簿的情况:我将数据从几张纸变成一张纸。我的VBA将一张纸的数据放入书签中的几个Word文档中。这很好。在此工作表上,我绘制了公式,直到第30行为止,我的源工作表再也没有得到比该行数更多的信息。目的是如果源单元为空,则目标单元也保持为空。哪里出了问题。我用来保持单元格为空的公式是这样的:
=IF(Sheet1!A1="";"";Sheet1!A1)
在我的VBA中,我得到了下一个代码段:
With Sheets("Sheet2")
lonLastRow = .Cells(Rows.Count, "A").End(xlUp).Row
Set rngData = .Range(.Cells(2, 1), .Cells(lonLastRow, 1))
End With
完成宏后,屏幕上会显示一条消息,显示用该数据生成了多少文件,每一行都有一个生成文件的数据。我收到此消息的方式是使用以下代码:
MsgBox "Aantal gegenereerde documenten: " & lonLaatsteRij
EN翻译:(MsgBox“生成的文档数:&lonLastRow”)
我的宏进入第30行,其中1个带有标题,而29个带有数据。在第30行之后,没有数据。问题在于宏在数据的最后一行之后没有停止。例如:如果我有10行数据,宏将一直排到第30行,因为即使单元格中没有数据显示,我的公式也会一直绘制到第3行。
我正在寻找的是一种在数据最后一行之后停止的方法。当没有数据输入时,保持单元格清晰显然是不够的。我想这需要使用VBA解决...但是什么呢?
我有类似的用法要使用,但是我不知道确切的实现方式
For Each c in rngData
If c.Value = "" Then ... Else ...
Next c
有人愿意帮助我吗?