Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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
Excel VBA中对行的循环调用_Excel_Vba_Call - Fatal编程技术网

Excel VBA中对行的循环调用

Excel VBA中对行的循环调用,excel,vba,call,Excel,Vba,Call,我试图在我的第一行上运行一个调用,然后删除该行并将下面的单元格向上移动,然后再次在新的第一行上运行它。重复练习,直到没有多余的行了。是的,我知道这可能是一种缓慢的方式,但我的呼叫每行大约需要10秒,所以这是一种很好的跟踪进度(即剩余多少行)的方式 这是我到目前为止得到的,但它不理解我的请求,即删除范围A2:C2,如果范围A3中有值,则将单元格从下向上移动 任何帮助都将不胜感激 Sub loop_through_rows() Dim rngQuantityCells As Range Set

我试图在我的第一行上运行一个调用,然后删除该行并将下面的单元格向上移动,然后再次在新的第一行上运行它。重复练习,直到没有多余的行了。是的,我知道这可能是一种缓慢的方式,但我的呼叫每行大约需要10秒,所以这是一种很好的跟踪进度(即剩余多少行)的方式

这是我到目前为止得到的,但它不理解我的请求,即删除范围A2:C2,如果范围A3中有值,则将单元格从下向上移动

任何帮助都将不胜感激

Sub loop_through_rows()

Dim rngQuantityCells As Range

Set rngQuantityCells = Range("A2", Range("A2").End(xlDown))

For i = 1 To rngQuantityCells
Call RunSplit

If Range("A3").Value > 0
then
Range("A2:C2”).Delete Shift:=xlUp

End If
Next
End Sub
试试这个:

Sub loop_through_rows()
Dim rngQuantityCells As Range
Set rngQuantityCells = Range("A2", Range("A2").End(xlDown))

For i = 1 To rngQuantityCells
    Call RunSplit
    If Range("A3").Value > 0 Then
        Range("A2:C2").Delete Shift:=xlUp
    End If
Next
End Sub

注意,您需要在同一行中输入
,然后输入
。另外,你在
范围(“A2:C2”)

上的原始帖子中有两个引号的“样式”(?)如何/何时设置变量rngSinglecell?如果你能给出一个带有解释的屏幕截图,它将帮助你得到更好的答案。(你没有得到错误吗?你的
那么
应该与
If
在同一行,AFAIK)在我的范围(“A2:C2”)内出现了一个“编译错误:语法错误”。删除Shift:=xlUpThanks很多,多愚蠢的错误!经过一些小技巧后,它就可以工作了。非常感谢!