excel - vba - 在循环中调用函数
问题描述
我需要在循环中调用自制函数(GetCoordinates)并在每个循环步骤中应用它。
我有一列包含数据(从 L2 开始),我需要将我的个人函数 GetCoordinates 应用于该数据并将结果写入它旁边的列(所以从 M2 开始)
NumRows = Range("L2", Range("L2").End(xlDown)).Rows.Count
Range("L2").Select
For x = 1 To NumRows
Selection.Offset(, 1).Formula = "=GetCoordinates(L&x)"
ActiveCell.Offset(1, 0).Select
Next
我的问题是我不知道如何将我的功能应用于每个单元格。应该如何编写以便为循环中的每个单元格调用该函数?(GetCoordinates 函数工作正常)
解决方案
尝试在没有循环的情况下输入所有公式。要在 M 列中编写公式并将 L 列用作公式参数,然后使用,
Range(cells(2, "M"), cells(rows.count, "L").End(xlup).offset(0, 1)).Formula = _
"=GetCoordinates(L2)"
你自己的可能更接近,
Selection.Offset(, 1).Formula = "=GetCoordinates(L" & x & ")"
但是你不匹配 Do ... While 和 For ... Next 循环。
推荐阅读
- jpa - JPA 2.2:哪一个是要添加到项目中的 API 工件?
- wcf - PHP Soap 客户端调用 WCF 服务?
- mysql - Google Apps 脚本上的 JDBC。例外:由于超时或客户端请求而取消语句
- node.js - 角度的快速路线
- c# - 多部分/格式数据请求
- python - 来自 scd2 pandas 数据框的 python 查询 - 在 from_date 和 to_date 之间查找
- c - 续:从文件中索引单词的程序的分段错误
- excel - 如何使用 Python 读取仅可见单元格?
- flutter - 如何在颤动中将图库图像传递到另一个全屏
- java - 如何在 Selenium 中连接 firefox 现有会话?