VBA 嵌套 for 循环不会 运行

VBA nested for loop won't Run

您好,我正在 VBA 中为 excel 开发一个宏。我的代码中有一个嵌套的 for 循环,如下所示。第二个循环没有运行;即使是第二个循环中的 MsgBox() 命令也不会导致任何操作,程序似乎只是跳过嵌套循环而没有报告错误。

用简单的英语来说,这个嵌套循环应该:

1) 从数组categories_string的第i个条目中取出字符串(第一个for循环)。

2)遍历excel文件中"AE"列的300+行(第二个for循环,"length"是[=23中数据列的长度=])

3) 查找字符串匹配并将 1 添加到 categories_value 数组中的相应条目,该数组填充了设置为 0 的变量(if 语句)。

For i = LBound(categories_string) To UBound(categories_string)
   For p = 1 To p = length
      If Worksheets("sheet1").Cells(p + 2, "AE").Value = categories_string(i) Then
        categories_value(i) = categories_value(i) + 1
      End If
   Next
Next

改变

   For p = 1 To p = length

   For p = 1 To length

应该马上把你治好。

您可能还想考虑 ,尤其是如果您的 categories_string 很大且 length 很大。或者,只是为了练习