当前位置:编程学习 > VB >>

For Exit For 这个语句是什么意思?

For Exit For 这个语句什么意思?VB代码
 For j = 1 To 6: vDenominator(j) = 0: Next
     msg$ = FY + "MDSScores.csv"
     Open (fPath$ + "P4P\" + FY + "MDSscores.csv") For Input As #1
     For j = 1 To 7: Input #1, xx$: Next
     While Not EOF(1)
        Input #1, xx$: For j = 1 To 6: Input #1, L$(j): Next
          PIN(0, 1) = Val(xx$)
            For i = 1 To nHomes
             If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
        Next
             For j = 1 To 6
               If L$(j) <> "" Then MDS(i, j) = 100 - Val(L$(j))
             
 其中这句不是很懂,
 
If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
   Next
       For j = 1 To 6
                        If L$(j) <> "" Then MDS(i, j) = 100 - Val(L$(j))
 

PIN(0,1)是表1里的第一列(ID),一共214行,PIN (0, 1) 和 PIN (i, 2) 是另一表2里的第一和第二列(两列都是ID),都是206行。那么If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
 这句话是什么意思呢?是找出两个表里共有的ID?还是只是表2里的ID? --------------------编程问答-------------------- For i = 1 To nHomes
   If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
Next

在任意一个条件(PIN(0, 1) = PIN(i, 1)或者PIN(0, 1) = PIN(i, 2))为真时,
跳出循环(For i = 1 To nHomes 这个),去执行 Next 之后的语句。

它的目的是:找到表1中的ID 【PIN(0,1)】在表2中对应的序号,后面按这个序号再作相应处理。

你贴出的代码中,看不出如果“没找到”,它将如何处理。 -_-!!!
也许是因为表1中的ID,在表2中必然存在吧。 --------------------编程问答-------------------- 谢谢,现在有点明白了。再问一个问题
在下一语句中
If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
   Next
    For j = 1 To 6
     If L$(j) <> "" Then MDS(i, j) = 100 - Val(L$(j))

如果 L$(j)中 有一些是空值,那MDS(I,J)取啥值呢?
L$(J) 也是表1里的数,一共六列数 --------------------编程问答-------------------- 大牛呢? --------------------编程问答--------------------
引用 2 楼  的回复:
谢谢,现在有点明白了。再问一个问题
在下一语句中
If PIN(0, 1) = PIN(i, 1) Or PIN(0, 1) = PIN(i, 2) Then Exit For
   Next
    For j = 1 To 6
     If L$(j) <> "" Then MDS(i, j) = 100 - Val(L$(j))

如果 L$(j)中 有一些是空值,那MDS……


如果有初始化就是初始值,没有的话就是空值啊!!
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,