Excel vba-在循环中调用函数
我需要在循环中调用一个自制函数(GetCoordinates),并在每个循环步骤中应用它 我有一个包含数据的列(从L2开始),我需要将我的personal函数GetCoordinates应用于该数据,并将结果写入它旁边的列(因此从M2开始)Excel vba-在循环中调用函数,excel,vba,function,loops,Excel,Vba,Function,Loops,我需要在循环中调用一个自制函数(GetCoordinates),并在每个循环步骤中应用它 我有一个包含数据的列(从L2开始),我需要将我的personal函数GetCoordinates应用于该数据,并将结果写入它旁边的列(因此从M2开始) 我的问题是,我不知道如何将我的函数应用于每个单元格。应该如何编写,以便为循环中的每个单元格调用函数?(GetCoordinates函数工作正常)尝试输入所有公式,而不使用循环。要在M列中写入te公式并使用L列作为公式参数,请使用 Range(cells(2
我的问题是,我不知道如何将我的函数应用于每个单元格。应该如何编写,以便为循环中的每个单元格调用函数?(GetCoordinates函数工作正常)尝试输入所有公式,而不使用循环。要在M列中写入te公式并使用L列作为公式参数,请使用
Range(cells(2, "M"), cells(rows.count, "L").End(xlup).offset(0, 1)).Formula = _
"=GetCoordinates(L2)"
你自己的可能更接近
Selection.Offset(, 1).Formula = "=GetCoordinates(L" & x & ")"
但是你错配了,你。。。而对于。。。下一个循环。试试这个
NumRows = Range("L" & Rows.Count).End(xlUp).Row
For x = 2 To NumRows
Cells(x, "M").Value = GetCoordinates(Cells(x, "L"))
Next
输入数据是哪一列,您希望公式在哪一列?输入是L列,结果应该在M列(都在同一行)谢谢,它也起作用了。但是我不知道这两个解决方案中哪一个最快(我有大约6000行要处理)在code
Debug.Print“start Time:&Time:&Time
的开头添加一个计时器,在Debug.Print“start Time:&Time:&Time
的结尾,您就会知道。:-)
NumRows = Range("L" & Rows.Count).End(xlUp).Row
For x = 2 To NumRows
Cells(x, "M").Value = GetCoordinates(Cells(x, "L"))
Next