sb1 = Replace(c(j1) & c(j2) & c(j3), " ", "")
  
  sb2 = Replace(c(j4) & c(j5) & c(j6), " ", "")
  
  za = dy & ":" & sb1 & "," & sb2
   Text1.Text = Text1.Text & vbCrLf & za 
代码如↑变量声明全部写好 没错sb1 ,sb2都运算出来了 且正确 让我吐血的是运行后只显示 dy : sb1 后面的没了连那个","都没有 如果将sb2与sb1的代码位置互换下则只显示 dy : sb2 后面的没了连那个","都没有  这简直是蠢猪式的错误 吐血死我知道提这个问题很蠢 但不提不行 这个错误很让人蛋疼
Dim c(0 To 9) As String * 10 
dim  j As Integer
For j1 = 0 To 9
......c(j1) .... .
 ........代码
Next
运行后显示实时错误9 下标越界
我看了下错误语句 发现c(j1)中竟然j1=10 我明明声明的是
for j1 = 0 to 9 啊
怎么可能=10 
论坛里的大神们救救我吧 55555  
苹果熟了不会从树上掉下来了 直接飞天上去了 这让牛顿怎么发现万有引力啊555

解决方案 »

  1.   

    你的 Text1 是多行文本框吗?
    如果没设置为多行的,它不会换行,你要有足够的宽度来显示字符内容。
      

  2.   

    j1赋值语句是 for j1 = 0 to 9
      

  3.   

    文本框是接受多行的 而且有滚动条
    显示的结果也是多行的问题是
    za = dy & ":" & sb1 & "," & sb2
                      是↑这个&符号后面的没有显示出来 文本框的multiline=true
      

  4.   

    你在这句上设置一个断点,然后运行程序。
    在这儿中断后,你看看各个变量的值是否正常。
    然后按一下 F8 ,在 立即窗口中执行:
    print za看看输出内容是什么,跟你想要的结果是否一致。
      

  5.   

    我在5F说的‘各个变量’指的是:dy sb1 sb2 这三个。
      

  6.   

    首先谢谢chen8013 
    第一次用监视窗口(我这vb6的 不叫立即窗口 找了半天额)
    太好使了 呵呵 学了1年第一次用这个窗口 
    用print方法 能显示出来 sb1 sb2后面都缀了很长的符号 
    sb1 实际值是"1!!!!!!" 其实!是像倒着L的符号我打不出来 
    sb2 也是 
    dy sb1 sb2 的值程序都已经算出来了 只是后面缀了很长的符号 
    这个符号估计是因为
    for j1 = 0 to 9
    ......代码...
    next
    运行了11次的原因 第11次取得的是c(10){这是用立即窗口后 发现的j1=10} 我没有给这个数组赋值 
    如果给c(10)赋值的话应该能解决text1 显示不出的问题 
    但赋值的话给程序运行带来不便请问 
    for j1 = 0 to 9
    ......代码...
    next
    这个循环为什么运行了11次  0 1 2 3 4....9 10 这是11次 0也算进内的
    若改成 j1 = 1 to 10  最后发现j1 = 11
    这是为什么。
    能改不 
     我现在设置 j1 = 0 to 8
    运行后 发现j1 = 9  我用 for j1 = 0 to 9 
         ...代码...
        if j1 = 9 then exit for 
       next
    解决了问题 但我想知道 为什么 for 循环为什么多运行1次
    有没有更好的方法解决问题 
    因为 在循环体中添加     if j1 = 9 then exit for  这类的语句太麻烦
     若将j1的值 改为 0 to 8 又影响计算的结果求大师指导