dim db as database
dim tbfkm as dao.tabledef
db和tbfkm根本不对应,应该把db声明为
dim db as dao.database

解决方案 »

  1.   

    使用Dao需要先连接到数据源。看你的意思是在连接之前建立表,所以还是不要用DAO了,直接用Jet引擎就行了。把所有声明前的dao去掉,应该可以通过。
      

  2.   

    运行时 Set fld1 = tbfkm.CreateField("科目名称", dbText, 12
    提示: "类型不匹配!“
      

  3.   

    Dim db As Database
    Dim tbfkm As TableDef
    Dim fld1 As Field
    Dim fld2 As Field
    Dim fld3 As Field
    Dim fld4 As Field
    Dim fld5 As Field
    Dim fld6 As Field
    Dim fld7 As Field
    Dim fld8 As Field
    Dim fld9 As Field
    Dim flda As Field
    Dim fldb As Field
    Dim fldc As Field
    snewname = App.Path & "\data" & ".mdb"
    Set db = CreateDatabase(snewname, dbLangGeneral, dbEncrypt)
    Set tbfkm = db.CreateTableDef("科目")
          Set fld1 = tbfkm.CreateField("科目名称", dbText, 12)
          fld1.AllowZeroLength = True
          Set fld2 = tbfkm.CreateField("助记码", dbText, 4)
          fld2.AllowZeroLength = True
          Set fld3 = tbfkm.CreateField("科目性质", dbText, 6)
          fld3.AllowZeroLength = True
          Set fld4 = tbfkm.CreateField("科目类别", dbText, 6)
          fld4.AllowZeroLength = True
          Set fld5 = tbfkm.CreateField("帐户格式", dbText, 6)
          fld5.AllowZeroLength = True
          Set fld6 = tbfkm.CreateField("分部门", dbText, 6)
          fld6.AllowZeroLength = True
          Set fld7 = tbfkm.CreateField("核算现金", dbText, 12)
          fld7.AllowZeroLength = True
          Set fld8 = tbfkm.CreateField("币种", dbText, 6)
          fld8.AllowZeroLength = True
          Set fld9 = tbfkm.CreateField("单位", dbText, 12)
          fld9.AllowZeroLength = True
          Set flda = tbfkm.CreateField("汇兑转出方向", dbText, 12)
          flda.AllowZeroLength = True
          Set fldb = tbfkm.CreateField("损益转出方向", dbText, 12)
          fldb.AllowZeroLength = True
          Set fldc = tbfkm.CreateField("期初余额", dbText, 12)
          fldb.AllowZeroLength = True
          Set fldd = tbfkm.CreateField("年初余额", dbText, 12)
          fldb.AllowZeroLength = True
          tbfkm.Fields.Append fld1
          tbfkm.Fields.Append fld2
          tbfkm.Fields.Append fld3
          tbfkm.Fields.Append fld4
          tbfkm.Fields.Append fld5
          tbfkm.Fields.Append fld6
          tbfkm.Fields.Append fld7
          tbfkm.Fields.Append fld8
          tbfkm.Fields.Append fld9
          tbfkm.Fields.Append flda
          tbfkm.Fields.Append fldb
          tbfkm.Fields.Append fldc
          tbfkm.Fields.Append fldd
          db.TableDefs.Append tbfkm
          Set fld1 = Nothing
          Set fld2 = Nothing
          Set fld3 = Nothing
          Set fld4 = Nothing
          Set fld5 = Nothing
          Set fld6 = Nothing
          Set fld7 = Nothing
          Set fld8 = Nothing
          Set fld9 = Nothing
          Set flda = Nothing
          Set fldb = Nothing
          Set fldc = Nothing
          Set fldd = Nothing
          Set tbfkm = Nothing
    db.Close
    Set db = Nothing我运行过了,全部通过。
      

  4.   

    fld1.AllowZeroLength = True 提示“未找到方法 或数据成员“
      

  5.   

    dao 不也是用 jet 引擎 吗?
    估计是查找的问题。