我两个问题,请大家帮忙!1.我现在的进销存是在一台电脑上录入,其他电脑采用数据库共享直接访问的,其他电脑在访问时的速度极慢,我不知道该如何是好?我记得有人说过通过其他方式访问可以快点,我采用ADO的形式。如果有其他好建议不妨也说来听听!2、下列两个代码有什么区别?在VBA中我引用了MSHFLEXGRID控件,我是想通过设置一个文本框,然后在MSHFLEXGRID中进行编辑,在设置文本框rkdtxt_KeyPress时,后面的申明在VBA (ByVal KeyAscii As MSForms.ReturnInteger),而在VB中是(KeyAscii As Integer)同样的代码在VB是可以通过的,而在VBA中竟上述一个地方不同,竟然代码就无法通过?请问大家该如何办?VBA中文本框(rkdtxt),该代码在VBA中没通过。
Private Sub rkdtxt_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = ASC_ENTER Then
MSHFlexGrid1.SetFocus
KeyAscii = 0
End If
End Sub
VB中文本框(rkdtxt),该代码在VB中通过。
Private Sub rkdtxt_KeyPress(KeyAscii As Integer)
If KeyAscii = ASC_ENTER Then
MSHFlexGrid1.SetFocus
KeyAscii = 0
End If
End Sub
当然不是仅仅参数方面的问题!
谢谢!

解决方案 »

  1.   

    一、是ACCESS的数据库。二、错误原因我知道还要问大家?
    错误的提示是:“编译错误,过程声明与事件描述不匹配,或过程具有相同的名称”
    主要我看是两个参数:在VBA中是ByVal KeyAscii As MSForms.ReturnInteger,而在VB中是KeyAscii As Integer,就是这点差别没有通过?
      

  2.   

    1:建议使用sql  ACCESS访问用共享的方式肯定慢
    2: 不太清楚
    等强人吧
      

  3.   

    我用MSHFLEXGRID浏览记录集,在记录集中总共只有2000条记录,在每张单子(6条记录)都要用较长的时间,具体要5-6秒,不象在本地的速度,1秒中。我觉得这种方式肯定有问题!
      

  4.   

    ACCESS只是桌面型数据库,C/S系统还是用SQL server数据库来做吧
      

  5.   

    共享型的当然慢,是最慢的,有条件的话就换了吧。
    VBA里就是这样的,你要在VBA环境里运行当然要按它的要求来做。
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)End Sub
      

  6.   

    不建议通过共享访问ACCESS数据库.建议使用SQL SERVER等网络数据库.╭═══════════════════╮
    ║ 免费的源码、工具网站,欢迎大家访问!║
    ║ http://www.j2soft.cn/        ║
    ╰═══════════════════╯
      

  7.   

    ADO确实比DAO慢许多,但不至于会慢这么多的,2000条记录,要5-6秒?优化你的SQL查询语句吧我一个ACCESS数据库都50M了,在两台1999年的电脑下运行,业务非常繁忙,但不感觉速度有问题,我用的DAOPrivate Sub rkdtxt_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = ASC_ENTER Then
    MSHFlexGrid1.SetFocus
    KeyAscii = 0
    End If
    End Sub按ENTER键后看能否取出KeyAscii的值 
      

  8.   

    ByVal KeyAscii As MSForms.ReturnIntegerMSForms.ReturnInteger 根 integer 类型不一样就不能用 
    哈 这个好像没有重载 ~~~
      

  9.   

    1:快速的方法倒不是用ADO,DAO,RDO,而是先从文本文件里面预读数据,然后启动后在后台用ADO代替,不管ACCESS,SQL SERVE,都可以2: MSForms.ReturnInteger,很简单,VB里面没有MSForms的类库,当然不能使用
      

  10.   

    如果只求快,不用数据库,用txt最好!
      

  11.   

    SQL SERVER 2005 要十几万一套。