Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 当变量范围为1时,循环通过变量范围的代码失败_Vba_Excel - Fatal编程技术网

Vba 当变量范围为1时,循环通过变量范围的代码失败

Vba 当变量范围为1时,循环通过变量范围的代码失败,vba,excel,Vba,Excel,我的一些代码有问题。我基本上写了一行,它允许我定义一个大小可变的范围。这样,我的模型就可以为范围内的每个图元创建图纸。当定义的范围大于1时,这段代码可以很好地工作,但是当我应该定义一个范围为1或0时,我的代码告诉我在这个范围内有大量元素(比如100000个)。有人知道为什么吗?代码如下: Dim deposits As Range Set deposits = Worksheets("DATA ENTRY").Range("C3", Worksheets("DATA ENTRY").Range(

我的一些代码有问题。我基本上写了一行,它允许我定义一个大小可变的范围。这样,我的模型就可以为范围内的每个图元创建图纸。当定义的范围大于1时,这段代码可以很好地工作,但是当我应该定义一个范围为1或0时,我的代码告诉我在这个范围内有大量元素(比如100000个)。有人知道为什么吗?代码如下:

Dim deposits As Range
Set deposits = Worksheets("DATA ENTRY").Range("C3", Worksheets("DATA ENTRY").Range("C3").End(xlDown))

问题是,如果C4或以下没有数据,
xlDown
将下移到Excel的最后一行

因此,从最后一行开始使用
xlUp
。计数以确定最后使用的单元格。这比
xlDown
方法更可靠

Dim deposits As Range
Set deposits = Worksheets("DATA ENTRY").Range("C3", Worksheets("DATA ENTRY").Cells(Rows.Count, "C").End(xlUp))

这个答案很好地解释了
xlDown
:这帮了大忙!也谢谢你!完美的作品非常感谢。