【发布时间】:2016-03-06 23:52:26
【问题描述】:
我正在尝试编写一个双 for 循环来从一个 excel 文件中提取一些输出到另一个文件中。
我有许多数据集,每个数据集都有多个我想从中提取信息的分析。例如,Dataset1 有 Analysis 1 和 2,Dataset 2 有 Analysis 5 和 6,Dataset3 有 Analysis 9 和 10,依此类推……
对于这些分析中的每一个,我都想调用 Extract1,它是执行实际工作的宏。由于代码比较长,Extract1 调用了 Extract2,Extract2 继续了 Extract 1 中的代码。
我已尝试使用 MsgBox 进行调试。当我运行此代码时,循环进入 Dataset2 和 Dataset3。但是对于数据集 2 和 3,它不会进入分析循环。有谁知道是什么问题?
Option Explicit
Public Master As Workbook
Public Source As Workbook
Public IB As String
Public IB2 As String
Public IB3 As String
Public IB4 As String
Public Dataset As Double
Public Analysis As Double
Public Mean_Diff As Double
Public Interaction As Double
Sub looper()
For Dataset = 1 To 3
For Analysis = ((Dataset - 1) * 4 + 1) To (Dataset * 2)
Extract1
Next Analysis
Next Dataset
End Sub
【问题讨论】:
-
((Dataset - 1) * 4 + 1) To (Dataset * 2)有 1 是1 to 2在 25 to 4和 39 to 6...数学在这里杀死你;) -
啊。知道了!谢谢。
-
在一个相关问题中,是否可以让 Excel 循环遍历不遵循任何模式但已预先确定的列表(例如分析 4、9、24、30 等)?
-
如果是新问题,请继续提出新问题。但只有在自己做一些研究之后。 :) 例如谷歌
for each! -
是的...
For Each是正确的方法。喜欢For Each x In Array(1, 2, 5, 6, 9, 10)然后就去x...