“结束如果没有阻止如果”错误

时间:2018-05-03 09:04:05

标签: excel vba if-statement

我有Excek VBA的问题。我的代码的以下部分返回错误代码“End If without block If”。但我不明白为什么。我搜索了互联网,但仍然找不到问题所在。关于代码:我想打开两个文件夹,找到文件夹1(Controlfolder)中的文件,文件名包含字符串“ROI_3”。找到后,我想打开它并在名为“ROI_3”的其他文件夹(Treatedfolder)中找到该文件。后来,我想使用两个文件中的数据进行计算。您可以在下面看到代码的相关部分。

Do While ControlFile <> ""

        If InStr(ControlFile, "ROI_3") > 0 Then
            Workbooks(ControlFile).Open
            Exit Do
            TreatedFile = Dir(TreatedFolder & "\", vbReadOnly)
                Do While TreatedFile <> ""
                If InStr(TreatedFile, "ROI_3") > 0 Then
                    Workbooks(TreatedFile).Open
                    Exit Do
                End If
        End If
        ControlFile = Dir
Loop

亲切的问候

Ferenc的

1 个答案:

答案 0 :(得分:0)

嗨,波纹管应该工作,你有两个做只有一个循环,我也移动了结束,如果结束第一个如果,应该工作。让我知道。

Do While ControlFile <> ""

            If InStr(ControlFile, "ROI_3") > 0 Then
            Workbooks(ControlFile).Open
            Exit Do
            End If
            TreatedFile = Dir(TreatedFolder & "\", vbReadOnly)
                Do While TreatedFile <> ""
                If InStr(TreatedFile, "ROI_3") > 0 Then
                    Workbooks(TreatedFile).Open
                    Exit Do
                End If

        ControlFile = Dir


Loop
Loop