【发布时间】:2019-09-25 10:14:07
【问题描述】:
我有一个名称列表,以及一些我想为每个名称运行的代码。 我的开始是这样的:
Dim cell As Range
For Each cell In Worksheets("Reference").Range("b2:b237")
[rest of my code here]
Next cell
问题是,我真正想做的是:
步骤 1) 从单元格 A1 的下拉列表中选择一个名称
第 2 步)还有很多其他单元格的公式引用了 A1
第三步)运行代码
步骤 4) 从 A1 的下拉列表中选择下一个名称,重复步骤 2 和 3,直到列表结束。
编辑:我在一个旧线程上发现了一些似乎适用于我正在做的事情:
Sub Macro1()
Sheets("Sheet2").Activate
Range("A1").Select
Do While True
If Selection.Value = "" Then
Exit Do
Else
Selection.Copy
Sheets("Sheet1").Activate
Range("A1").Activate
ActiveSheet.Paste
[rest of my code]
Sheets("Sheet2").Activate
Selection.Offset(1, 0).Select
End If
Loop
End Sub
这应该可以完成工作,但是如果有人有更有效的方法,而不是将列表中的每个值复制并粘贴到单元格中,那也将非常有帮助!
谢谢。
【问题讨论】:
-
SO 不是免费的代码编写平台,请展示您为解决问题所做的一些尝试。还要尝试指定您要实现的确切目标,我很难理解您的代码应该做什么。
-
@looopa 是用户表单中的列表?
-
@Dorian 不是,它只是另一个工作表上的一列中的 200 行名称
-
@M.Schalk 感谢您的建议,我尝试了一些东西,但我还是个初学者,所以我认为它们可能是错误的,提出问题的最简单方法是保留它开放式.. 我正在努力改进 qn
-
下拉菜单的名称从何而来?