如何在excel vba中为矩阵单元使用嵌套循环

它给了

当前 Excel 工作表结构

filteredStartRow = A2 detailsS​​tartRow = D2

※i = x(获取filteredItemCount的值,例如:2, 3, 2)
※j = y(获取detailsItemCount的值,例如:4, 5, 3)

我被卡住了,我可以多有效地移动到第二个 filtersStartRow (A4) 和 detailsS​​tartRow (D10)。并继续直到最后一个过滤器和详细信息 StartRow。

我在做什么:获取 ItemCount(例如:x,y)以在过滤器和详细信息项中运行嵌套循环。因为我已经知道过滤器和详细信息的下一个项目计数,所以我只需要更改我的 NEXT filterStartRow 和 detailsS​​tartRow。如何使用 (i, j) 的任何动态设置以及设置 STARTROW 来构建我的循环?任何人都可以请帮助代码。

这是我的代码,它仅适用于第一个循环(绿色边框)。

startRow = 2
startRow1 = 2
nextDetailsRow = 0

For i = 1 To noOfFilteredItem (e.g:3)

mapFilteredItemCount = Worksheets("Sheet1").Cells(startRow, 3).Value
detailsItemCount = Worksheets("Sheet1").Cells(startRow1, 6).Value

With ThisWorkbook.Worksheets("Sheet1")
For m = 1 To mapFilteredItemCount 
For n = 1 To detailsItemCount 
If .Cells((startRow + m) - 1, 2) = .Cells((startRow1 + n) - 1, 5) Then
If IsEmpty(.Cells((startRow1 + n) - 1, 8).Value) = True Then
.Cells((startRow1 + n) - 1, 8).Value = "Deliver"
nextDetailsRow = nextDetailsRow + startRow + n
Else
GoTo NextIteration
End If
End If
NextIteration:

Next n
Next m
End With
Next i

我的问题是:
- 一旦循环 (m, n) 完成,我需要动态更新 STARTROW 和 STARTROW1。
- 如何分配 STARTROW 和 STARTROW1 变量以接收下一个起始行值。

我的逻辑:
- 我想将所有的 STARTROW 和 STARTROW1 数字保存到一个数组中,然后从数组中获取值。
例如:
filteredItemRowArray() = 2, 4, 7 (※过滤项的起始行号)
detailsItemRowArray() = 2, 6, 11 (※详情项的起始行号)

但我无法安排这个数组来保留行号值。

任何人都可以帮助我,我真的很欣赏你的编程智能。如果您有任何疑问或理解问题,请告诉我。非常感谢你。

约亨

我会尝试同样的想法。循环遍历包含数字的数组。请尝试以下代码:

Sub Outer_Loop()
Dim StartrowArr, Startrow1Arr, I As Integer
Dim Startrow As Long, Startrow1 As Long
StartrowArr = Array(2, 4, 7)
Startrow1Arr = Array(2, 6, 11)
For I = LBound(StartrowArr) To UBound(StartrowArr)
    Startrow = StartrowArr(I)
    Startrow1 = Startrow1Arr(I)
    Debug.Print "Loop " & I, "Startrow: " & Startrow, "Startrow1: " & Startrow1
    ' your code
Next I
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Excel中嵌套IF,AND或OR

来自分类Dev

如何在Excel中处理此单元锁?(VBA)

来自分类Dev

如何在excel VBA中验证单元格值

来自分类Dev

清除验证后如何在excel VBA中为单元格分配值

来自分类Dev

如何在 Excel 中优化 VBA 代码中的多个循环

来自分类Dev

如何在Excel中查找

来自分类Dev

如何在Excel中完成

来自分类Dev

如何在Excel VBA中循环创建新词典的集合?

来自分类Dev

如何在Excel VBA中循环播放宏

来自分类Dev

如何在Excel VBA中循环播放宏

来自分类Dev

如何在Excel VBA中运行多个“ For / Each”循环

来自分类Dev

如何在Excel VBA中的范围内循环列

来自分类Dev

如何在Excel VBA中使用循环创建命名范围?

来自分类Dev

VBA Excel中的嵌套循环

来自分类Dev

如何在R的矩阵中存储嵌套循环值

来自分类Dev

如何在EXCEL VBA中获取行数

来自分类Dev

如何在VBA(Excel)中遍历行

来自分类Dev

如何在EXCEL VBA中获取行数

来自分类Dev

如何在Excel中优化VBA函数

来自分类Dev

如何在VBA中激活打开的excel

来自分类Dev

如何在VBA中声明Excel范围?

来自分类Dev

如何在保存时使用 VBA 在 excel 中显示消息框和单元格编号

来自分类Dev

如何在Matlab中以循环为单位创建矩阵?

来自分类Dev

如何在Excel VBA中选择单元格?

来自分类Dev

如何在Excel VBA中将单元格范围设置为If语句的条件

来自分类Dev

如何在Excel中编写复杂的公式?

来自分类Dev

如何在android中创建Excel文件?

来自分类Dev

如何在Excel中创建参考变量

来自分类Dev

如何在Excel中调整图表大小