大家好。我们公司都是用EXCEL操作数据。可现在要用VB编写一个前台界面。并把EXCEL文件作为它的数据源。请问如何通过网络连接?

解决方案 »

  1.   

    也就通过文件共享的方式吧,用ado就可以连
    不过这样设计似乎不太好吧?excel不是关系型数据库,并且似乎不支持多用户并发打开?并且不好维护固定的数据格式,一定要用excel的话,还不如另外搞个数据库,让excel叶连接数据库。
      

  2.   

    谢谢。
    通过文件共享,用ADO如何连接。最好给代码.因为我不懂这种连接方法。
    让EXCEL叶连接数据库是什么意思?怎样理解?
      

  3.   

    谢谢大家。我已经解决了
    方法是:
    Set Cnn = New ADODB.Connection
    Cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=false;Data Source=costf-04.xls;Extended Properties='Excel 8.0;HDR=Yes'"
        Cnn.Open
    不好意思可我不知怎么把该文件的所有表格读出来?
      

  4.   

    Function Read_Excel(ByVal sFile As String) As ADODB.Recordset      On Error GoTo fix_err
          Dim conn As ADODB.Connection
          Dim rs As ADODB.Recordset
          Set rs = New ADODB.Recordset
          Set conn = New ADODB.Connection
          Dim sconn As String      rs.CursorLocation = adUseClient
          rs.CursorType = adOpenKeyset
          rs.LockType = adLockBatchOptimistic      sconn = "DRIVER=Microsoft Excel Driver (*.xls);" & "DBQ=" & sFile
          conn.Open sconn
          rs.Open "SELECT * FROM [sheet1$]", conn
          
          Set Read_Excel = rs
          Set rs = Nothing
          Exit Function
    fix_err:
          Debug.Print Err.Description + " " + _
                      Err.Source, vbCritical, "Import"
          Err.Clear
    End FunctionPrivate Sub Command1_Click()
          dim rs as new adodb.recordset
          Set rs = Read_Excel(App.Path & "\" & "test.xls")
          rs.fields("字段")
    End Sub
      

  5.   

    谢谢你。
    可你这个是读取EXCEL文件中某个表的内容。而我要读取文件中所有EXCEL文件中所有表。如:SHEET1,SHEET2----SHEET100这是100个表。
    你能再帮我想想吗?
      

  6.   

    Set Cnn = New ADODB.Connection
    Cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=false;Data Source=costf-04.xls;Extended Properties='Excel 8.0;HDR=Yes'"
        Cnn.Open这种办法只能连接本地,而我要连接网络EXCEL。怎么办求救!
      

  7.   

    不明白连接网络EXCEL,
    1.通过Http协议?请问你的网络是远程的IIS Server吗?只这种情况我从来没有成功连接过Access或Excel(请哪位高手指点)
    2.还是自己可以控制的主机,在上面装自己的接收程序,使用Ftp接收或传送资料,或其他方法来沟通。
    我把问题搞复杂了,对不起楼主。