在另一个Excel VBA中运行一个For循环

我试图运行两个循环,一个在另一个。 每次外层循环运行时,内层循环都应该一直运行。 我已经附上我的代码,但目前不能正常工作。 还有代码将结果写入外部csv文件,这是我不知道如何做,如果任何人都可以看到任何明显的错误,那么将不胜感激。 先谢谢你。

Public Sub Practice1() Dim UpLim1 As Double, UpLim2 As Double, LowLim1 As Double, LowLim2 As Double Dim outcome As String, FilePath As String, MtchUIDs As String Dim i As Long, j As Long Dim SRCUID As String, SNKUID As String MtchUIDs = "" FilePath = Application.DefaultFilePath & "\ffpstage1.csv" Open FilePath For Output As #2 For i = 2 To 91 For j = 2 To 90 UpLim1 = Range("d" & i).Value LowLim1 = Range("c" & j).Value UpLim2 = Range("j" & i).Value LowLim2 = Range("i" & j).Value SRCUID = Range("a" & i).Value SNKUID = Range("g" & j).Value If UpLim2 >= LowLim1 And LowLim1 >= LowLim2 Then MtchUIDs = SRCUID & SNKUID ElseIf UpLim1 > LowLim2 And LowLim2 >= LowLim1 Then MtchUIDs = SRCUID & SNKUID Write #2, MtchUIDs MtchUIDs = "" Else Next j End If Next i 

结束小组

你需要一个End IfFor j循环中,为循环尝试这个:

 For i = 2 To 91 For j = 2 To 90 UpLim1 = Range("d" & i).Value LowLim1 = Range("c" & j).Value UpLim2 = Range("j" & i).Value LowLim2 = Range("i" & j).Value SRCUID = Range("a" & i).Value SNKUID = Range("g" & j).Value If UpLim2 >= LowLim1 And LowLim1 >= LowLim2 Then MtchUIDs = SRCUID & SNKUID ElseIf UpLim1 > LowLim2 And LowLim2 >= LowLim1 Then MtchUIDs = SRCUID & SNKUID Write #2, MtchUIDs MtchUIDs = "" End if Next j Next i