Vba 从动态表复制和粘贴数据,同时排除公式空白

Vba 从动态表复制和粘贴数据,同时排除公式空白,vba,excel,Vba,Excel,我试图只复制数据,不包括If语句从“数据”选项卡创建的空格,然后粘贴到“摘要”选项卡上数据列的底部。问题在于试图找出如何让VBA识别可用数据的范围。根据需要,有几种不同的方法可以做到这一点。所以线程讨论了一些用途。讨论使用UsedRange或.Rows的。正如@findwindow所指出的,您可以使用.xlEnd 这是VBA的一个非常常见的用法,所以如果你在谷歌上搜索,甚至浏览一下,你会发现一些信息 编辑:根据您的注释,只需设置一个范围,并在该范围内的单元格中循环,直到找到一个非数字: Dim

我试图只复制数据,不包括If语句从“数据”选项卡创建的空格,然后粘贴到“摘要”选项卡上数据列的底部。问题在于试图找出如何让VBA识别可用数据的范围。

根据需要,有几种不同的方法可以做到这一点。所以线程讨论了一些用途。讨论使用UsedRange或.Rows的。正如@findwindow所指出的,您可以使用.xlEnd

这是VBA的一个非常常见的用法,所以如果你在谷歌上搜索,甚至浏览一下,你会发现一些信息

编辑:根据您的注释,只需设置一个范围,并在该范围内的单元格中循环,直到找到一个非数字:

Dim rng as Range, cel as Range
Dim lastRow as Integer
Set rng = Range("A1:A10000")
for each cel in rng
 If not isnumeric(cel.value) then 
   'Do whatever code you want, when the cell is NOT numeric, ie
   lastRow = cel.Row
End if
next cel

您当前是否有错误代码?有关更多信息,请参阅。lol使用谷歌搜索,您可以在30秒内找到答案。要了解最底层,请使用lastRow=ActiveSheet.CellsActiveSheet.Rows.Count,A.EndxlUp.Row。请确保根据需要更改工作表和列。是的,如果我没有使用if语句创建空格,这将起作用。因此,count方法实际上并不返回最后一行数据。我已经尝试过这些方法,但我的动态数据范围包含IF语句中的空格。您提到的方法给出了最后一行的公式,而不是实际数据的最后一行。我正在寻找一种方法,包括一个循环函数来测试每个单元格的IsNumber,直到它发现false,然后使用该值作为我的范围。