Excel vba-在循环中调用函数

Excel vba-在循环中调用函数,excel,vba,function,loops,Excel,Vba,Function,Loops,我需要在循环中调用一个自制函数(GetCoordinates),并在每个循环步骤中应用它 我有一个包含数据的列(从L2开始),我需要将我的personal函数GetCoordinates应用于该数据,并将结果写入它旁边的列(因此从M2开始) 我的问题是,我不知道如何将我的函数应用于每个单元格。应该如何编写,以便为循环中的每个单元格调用函数?(GetCoordinates函数工作正常)尝试输入所有公式,而不使用循环。要在M列中写入te公式并使用L列作为公式参数,请使用 Range(cells(2

我需要在循环中调用一个自制函数(GetCoordinates),并在每个循环步骤中应用它

我有一个包含数据的列(从L2开始),我需要将我的personal函数GetCoordinates应用于该数据,并将结果写入它旁边的列(因此从M2开始)


我的问题是,我不知道如何将我的函数应用于每个单元格。应该如何编写,以便为循环中的每个单元格调用函数?(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