添加i = i + 1时Excel VBA代码崩溃

时间:2019-07-02 14:55:40

标签: excel vba loops crash

首先,我对VBA编码不是很有经验,所以如果这个问题很多余,我深表歉意。

目前,我的代码在启动后将崩溃或停滞。

我的代码的目的只是将一个工作表中的一个单元格与第二个工作表中的一个单元格进行比较,如果它们匹配第二个工作表中的另一个单元格,则必须将其复制到第一张工作表中。我希望代码在第二张工作表的每个单元格中循环,直到找到匹配项,然后再转到第一张工作表中的下一个单元格。

但是,当我将计数器(i = i + 1)添加到我的if语句中时,代码似乎不再起作用并停滞。

Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
Dim Label As String
Dim Blindnumber As String
Dim Animal As String
i = 8
j = 8

Do While ThisWorkbook.Sheets(2).Cells(i, 1).Value <> ""
    Label = ThisWorkbook.Sheets(1).Cells(i, 1).Value
    Blindnumber = ThisWorkbook.Sheets(2).Cells(j, 1).Value
    Animal = ThisWorkbook.Sheets(2).Cells(j, 2).Value
    If Label = Blindnumber Then
        ThisWorkbook.Sheets(1).Cells(i, 5).Value = Animal
        i = i + 1
    Else
        j = j + 1
    End If
j = 8
Loop

End Sub

仅当Label与Blindnumber匹配时,我才需要将i的值增加1 如果没有,我需要将j值增加1并重复该过程

此刻,我因excel停滞而陷入困境,这延迟了修复代码的反复试验方法。如果有人可以帮助我并告诉我我在代码中做错了什么,将不胜感激!

0 个答案:

没有答案