sami_szl 发表于 2008-7-3 23:06

已解决:在EXCEL中用使用ADO直接连接ACCESS数据库(附源码)

本人有一个饱和水蒸汽表数据库,用ACCESS做的。在EXCEL中想用vba做一个函数,当输入温度,即可得到相应温度下饱和水蒸气的其它参数,如压力,焓,潜热等。如果EXCEL中的温度在ACCESS中温度之间,可用试差计算得到其它参数。请各位帮忙,在此谢谢大家。。。

[[it] 本帖最后由 sami_szl 于 2008-7-3 23:10 编辑 [/it]]

[[it] 本帖最后由 sami_szl 于 2008-7-3 23:15 编辑 [/it]]

[[it] 本帖最后由 sami_szl 于 2008-7-5 15:39 编辑 [/it]]

sami_szl 发表于 2008-7-3 23:23

本人求助的原因:由于我要做大量的计算,很多都是对饱和水蒸汽表的数据查询,当然是人工的,每次在EXCEL中调整一下温度,都得重新查饱和水蒸汽表,并输入如压力,焓,潜热等值,好麻烦。我的想法是,做几个函数,如:GetDateP(T),GetDateH(T),GetDateR(T),即可得到相应的值。希望各位好心人帮忙。。。谢谢。。。

sami_szl 发表于 2008-7-5 15:34

自己已经连接到数据库了!给大家分享一下:
但首先要在工具中引用ADO两个MADO2.7 LIBRARY和MADOR2.8 LIBRARY
Public Sub ADOTest1()
    Dim cnn As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    Dim strCnn As String
    Dim i As Long
   
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
             "Data Source=" & ThisWorkbook.Path & "\evapor.mdb;"
    cnn.Open strCnn
   
    rs.Open "Select * From Evapor", cnn, adOpenForwardOnly, adLockReadOnly
    i = 1
    Do Until rs.EOF
        Cells(i, 1).Value = rs.Fields("ET").Value
        Cells(i, 2).Value = rs.Fields("EP").Value
        Cells(i, 3).Value = rs.Fields("Ev").Value
        Cells(i, 4).Value = rs.Fields("Eh").Value
        Cells(i, 5).Value = rs.Fields("Er").Value
        i = i + 1
        rs.MoveNext
    Loop
   
    rs.Close
    cnn.Close
End Sub

[[it] 本帖最后由 sami_szl 于 2008-7-5 15:42 编辑 [/it]]

[[it] 本帖最后由 sami_szl 于 2008-7-5 18:31 编辑 [/it]]

页: [1]

编程论坛