ronjonp 发表于 2008-11-20 12:17:18

读取和写入Access 2007(accdb文件)

我一般不'我不要求施舍……但今天我是。有没有人有一些示例代码(最好是vbs)来打开数据库,从特定列中读取单元格,并将图像附加到另一个单元格(图像名称对应于读取的第一个单元格)
这看起来像是我需要走的方向,但我'我通常很迷茫:丑陋:在lisp语言之外http://msdn.microsoft.com/en-us/library/bb257442.aspx任何帮助都将不胜感激
附件示例…需要从结构ID列读取数据,并用回形针图标将照片附加到最后一列
谢谢,罗恩
**** Hidden Message *****

ronjonp 发表于 2008-11-20 14:03:14

如果'你想要什么。我使用DAO链接到数据库Option Explicit
    Public Tatts As Variant
    Public ssnew_is As Object
    Const DATABASE_DIR = "q:\std\drafting_db\"
    Dim db As DAO.Database
Sub CaddReq()
Dim Projdia As String
Dim Caddr As String
Dim Filenm As String
Dim EntGrp(0) As Integer
Dim EntPrp(0) As Variant
Dim BlkObj As Object
Dim Pt1(0) As Double
Dim Pt2(0) As Double
Dim objSelSet As AcadSelectionSet
Dim objSelCol As AcadSelectionSets
    Set objSelCol = ThisDrawing.SelectionSets
    For Each objSelSet In objSelCol
      If objSelSet.Name = "db4_block" Then
            objSelSet.Delete
            Exit For
      End If
    Next
    Call str_test
    Set ssnew_is = ThisDrawing.SelectionSets.Add("db4_block")
    EntGrp(0) = 2
    EntPrp(0) = "drafting_db_block"
    ssnew_is.Select acSelectionSetAll, Pt1, Pt2, EntGrp, EntPrp
    If ssnew_is.Count >= 1 Then
    Call cadreq_str
      Tatts = ssnew_is.Item(0).GetAttributes
      Filenm = (LTrim(Tatts(2).TextString))
    Set db = DAO.OpenDatabase(DATABASE_DIR & "drafting_db_oldver.mdb", False, False)
    Dim rs As DAO.Recordset
      Set rs = db.OpenRecordset( _
      "SELECT * FROM CaddReqTrack WHERE File_Path = '" _
      & D_path & "' AND FileName = '" & Filenm & "' AND Cadd_Req = '" & cad_req & "'")
    If (rs.RecordCount > 0) Then
      rs.Edit
      rs.Fields("Drawing_Name") = (LTrim(Tatts(3).TextString))
      rs.Fields("Station") = (LTrim(Tatts(4).TextString))
      rs.Fields("Location") = (LTrim(Tatts(5).TextString))
      rs.Fields("Description") = (LTrim(Tatts(6).TextString))
      rs.Fields("Dwg_Scale") = (LTrim(Tatts(7).TextString))
      rs.Fields("Rev_CE") = (LTrim(Tatts(8).TextString))
      rs.Fields("Date_CE") = (LTrim(Tatts(9).TextString))
      rs.Fields("Rev_Desc_CE") = (LTrim(Tatts(10).TextString))
      rs.Fields("Drawn_By_CE") = (LTrim(Tatts(11).TextString))
      rs.Fields("Eng_By_CE") = (LTrim(Tatts(12).TextString))
      rs.Fields("Rev_GE") = (LTrim(Tatts(13).TextString))
      rs.Fields("Date_GE") = (LTrim(Tatts(14).TextString))
      rs.Fields("Rev_Desc_GE") = (LTrim(Tatts(15).TextString))
      rs.Fields("Drawn_By_GE") = (LTrim(Tatts(16).TextString))
      rs.Fields("Eng_By_GE") = (LTrim(Tatts(17).TextString))
      rs.Fields("D_Code") = (LTrim(Tatts(18).TextString))
      rs.Fields("S_Code") = (LTrim(Tatts(19).TextString))
      rs.Update
    Else
      rs.AddNew
      rs.Fields("Cadd_Req") = cad_req
      rs.Fields("Filename") = (LTrim(Tatts(2).TextString))
      rs.Fields("Drawing_Name") = (LTrim(Tatts(3).TextString))
      rs.Fields("Station") = (LTrim(Tatts(4).TextString))
      rs.Fields("Location") = (LTrim(Tatts(5).TextString))
      rs.Fields("Description") = (LTrim(Tatts(6).TextString))
      rs.Fields("Dwg_Scale") = (LTrim(Tatts(7).TextString))
      rs.Fields("Rev_CE") = (LTrim(Tatts(8).TextString))
      rs.Fields("Date_CE") = (LTrim(Tatts(9).TextString))
      rs.Fields("Rev_Desc_CE") = (LTrim(Tatts(10).TextString))
      rs.Fields("Drawn_By_CE") = (LTrim(Tatts(11).TextString))
      rs.Fields("Eng_By_CE") = (LTrim(Tatts(12).TextString))
      rs.Fields("Rev_GE") = (LTrim(Tatts(13).TextString))
      rs.Fields("Date_GE") = (LTrim(Tatts(14).TextString))
      rs.Fields("Rev_Desc_GE") = (LTrim(Tatts(15).TextString))
      rs.Fields("Drawn_By_GE") = (LTrim(Tatts(16).TextString))
      rs.Fields("Eng_By_GE") = (LTrim(Tatts(17).TextString))
      rs.Fields("D_Code") = (LTrim(Tatts(18).TextString))
      rs.Fields("S_Code") = (LTrim(Tatts(19).TextString))
      rs.Fields("File_Path") = D_path
      rs.Update
    End If
    rs.Close
    Set rs = Nothing
    db.Close
    Set db = Nothing
    ThisDrawing.PurgeAll
    End If
End Sub

ronjonp 发表于 2008-11-20 15:29:44

谢谢…我'我去看看。
页: [1]
查看完整版本: 读取和写入Access 2007(accdb文件)