Foxtable(狐表)用户栏目专家坐堂 → 退出for each


  共有4339人关注过本帖树形打印复制链接

主题:退出for each

帅哥哟,离线,有人找我吗?
Bin
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/9 11:21:00 [显示全部帖子]

那只是退出了第一重循环,你这有2重循环呢   可以考虑使用return 不过后面的代码就全部不会执行了哦

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/9 11:26:00 [显示全部帖子]

你在同一个代码块内exit for两次没有用 上面一个执行后下面那个就没意义了.你可以使用一个变量 
dim b2 as boolean = false
For Each  dcs As DataCol  In DataTables("交换机").DataCols
     if b2 then
       exit for
     end if
            For Each drs As DataRow  In DataTables("交换机").DataRows
                Dim str1 As String = drs(dcs)
                Dim str2 As String = e.Row("主机_有线MAC")
                Dim b As Boolean = str1.Contains(str2)
                If b = True Then
                    dr("交换机_IP地址") = drs("交换机_IP地址")
                    dr("交换机_主机名") = drs("交换机_主机名")
                    dr("交换机_端口")=dcs.name  
                    b2=b
                    Exit For
                Else
                    dr("交换机_主机名")=Nothing
                    dr("交换机_IP地址")=Nothing
                    dr("交换机_端口")=Nothing
                End If
            Next
        Next

 回到顶部