我做了一个字处理程序,使用了MID函数,如下
for i=1 to len(txtfields(6).text)
   if mid(txtfields(6).text,i,1)="?" then
     '////////处理程序
   end if
next i注:txtfields(6).text 为非空在家里的电脑上可以运行,拿到单位电脑上总是提示“找不到工程或库”,而另外一个程序中的mid函数却可以使用,请问高手门是为什么???

解决方案 »

  1.   

    mid(txtfields(6).text,i,1)="?",这一句的含义是将txtfields(6).text中的第1个字符替换成"?"
      

  2.   


    不对吧。这个代码应该是判断txtfields(6)的第i个位置的那个字符是不是"?"
      

  3.   

    我估计不是这个MID引起的 “找不到工程或库”.
    看看你用什么控件了.
      

  4.   

    原因其实很简单
    改成:VBA.mid(txtfields(6).text,i,1)="?",在前面加个"VBA."就行了,它属于那个库.
    包你成功,呵呵!
      

  5.   

    //工程------->引用-------->肯定有个"丢失"的库----->复制过去引用上/取消此引用这个才是治本的办法.因为你机器上的VB6可能安装了某些库或插件,而公司机器没有.这个提示就非常不智能了.
      

  6.   

    我遇到过同样的问题,你的工程中的mid在公司的机子上没法用,但是你在公司机子上新建一个工程,mid就可以用,而且当你把程序复制过去,也可以用,我也对比了自己程序的库和公司新建工程引用的库,没有任何区别,但如果你在工程里用到mid,val,format等等函数时,前面加了"VBA.",那样到哪用都不会出问题.
      

  7.   

    记事本打开VBP文件看看....比较一下
      

  8.   


    你说对了,在IF..Then..中,是判断,要单独的一行,如: mid(txtfields(6).text,i,1)="?", 这才是替换. 
      

  9.   

    艾,晕死了1: 工程引用出现了问题,两种可能,1没有引用Microsoft必备库,2某个外部引用失效后,会引起Microsoft必备库引用失败2:  Mid函数就是一个字符查找函数,替换什么?我还没听说过3: 你 拿到单位的是EXE还是源代码,如果是EXE,最好安装,如果是源代码,通过第一条绝对可以找到问题
      

  10.   

    同意ing
    Mid在VB里分Mid函数和Mid语句,
    Mid函数返回字符,而 Mid 语句替换字符
    具体参加微软的:
    Mid 函数 (Visual Basic)
    Mid 语句(Visual Basic)
    这回该明了了吧?