这段程序那里错误了呀?指点下行吗?
它老说字段定义错误~那里错了呀~???谢谢指点!
Dim mydatabase As Database
Dim mytabledef As TableDef
Dim myfield As Field
Dim fieldnum As Double
Dim datapath As String
Dim tablename As String
Private Sub cmdaddtab_Click()
Dim tablename As String
Dim sesname As String
Set mydatabase = Workspaces(0).OpenDatabase(CommonDialog1.FileName, 0, False)
tablename = InputBox("请您输入表的名称", "提示")
If tablename = "" Then ji = MsgBox("没有输入表的名称", vbOKOnly, "警告!"): GoTo 1
Set mytabledef = mydatabase.CreateTableDef(tablename)
fieldnumber$ = InputBox("请输入课程数目", "提示")
If fieldnumber$ = "" Then
stringl$ = MsgBox("未输入课程数目", vbOKOnly, "警告")
Else:
fieldnum = Val(fieldnumber$)
Dim temp As Double
temp = fieldnum
Label3.Visible = True
Text1(0).Visible = True
For i = 1 To temp - 1
Load Text1(i)
Text1(i).Top = Text1(i - 1).Top + 400
Text1(i).Visible = True
Text1(i).Text = "课程名" & i + 1
Next
cmdok.Enabled = True
cmdok.SetFocus
cmdaddtab.Enabled = False
End If
1 End Sub
Private Sub cmdok_Click()
Set myfield = mytabledef.CreateField("学号", dbText, 15)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("姓名", dbText, 10)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("所在班", dbText, 3)
mytabledef.Fields.Append myfield
For i = 0 To fieldnum - 1
Set myfield = mytabledef.CreateField(Text1(i), dbInteger)
mytabledef.Fields.Append myfield
Next
Set myfield = mytabledef.CreateField("总分", dbInteger, 3)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("旷课节数", dbInteger, 3)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("荣誉记录", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("处分记录", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("助学贷款", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("勤工俭学", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("特困补助", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("综合测评", dbText, 250)
mytabledef.Fields.Append myfield
Set myfield = mytabledef.CreateField("老师评价", dbText, 250)
mytabledef.Fields.Append myfield
mydatabase.TableDefs.Append mytabledef
End Sub
Private Sub Command1_Click()
Unload Me
End Sub
Private Sub Command2_Click()
Dim db1 As Database
Dim tbl1 As TableDef
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
CommonDialog1.CancelError = True
CommonDialog1.Filter = "*.mdb|*.mdb"
CommonDialog1.ShowOpen
If CommonDialog1.FileName <> "" Then
Set db1 = OpenDatabase(CommonDialog1.FileName)
dizhi.Caption = CommonDialog1.FileName
End If
Combo1.Clear
For Each tbl1 In db1.TableDefs
If tbl1.Name = "MSysACEs" Or tbl1.Name = "MSysObjects" Or tbl1.Name = "MSysQueries" Or tbl1.Name = "MSysRelationships" Then GoTo 2
Combo1.AddItem tbl1.Name
2 Next
ErrHandler:
' 用户按了“取消”按钮
Exit Sub
End Sub
Private Sub Form_load()
cmdok.Enabled = False
End Sub