返回目录:excel表格制作
Option Explicit
Dim data As New ADODB.Connection
Dim db As New ADODB.Recordset
Dim xlsApp As Excel.Application
Dim xlsBook As Excel.Workbook
Dim xlsSheet As Excel.Worksheet
Private Sub Command1_Click()
On Error GoTo ErrHandler
CommonDialog1.DialogTitle = "Open files"
CommonDialog1.Filter = "mdb files(*.mdb)|*.mdb"
CommonDialog1.Flags = 4 '取消 “以只读方式e799bee5baa6e997aee7ad94e58685e5aeb9361打开” 复选框
CommonDialog1.ShowOpen
CommonDialog1.CancelError = True
If Len(CommonDialog1.FileName) <= 4 Then
Exit Sub
Else
Text1.Text = CommonDialog1.FileName
End If
ErrHandler:
Exit Sub
End Sub
Private Sub Command2_Click()
Dim NoExistF As New FileSystemObject
Dim i, j, k As Double
'Excel行i 列j,从第二行开始,去掉标题行
i = 2
j = 1
k = 1 'Access列号,第0列留着放主键
If NoExistF.FileExists(Text1.Text) = False Or NoExistF.FileExists(Text2.Text) = False Then
MsgBox "文件不存在!", 16, "错误提示"
Exit Sub
Else
'打开Access数据库
data.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Text1.Text & ";Persist Security Info=False"
db.Open "select * From sheet", data, adOpenKeyset, adLockOptimistic '数据库表的名字sheet
'打开Excel数据表
Set xlsApp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlsBook = xlsApp.Workbooks.Open(Text2.Text) '打开已经存在的EXCEL工件簿文件
Set xlsSheet = xlsBook.Worksheets("Sheet1") '设置活动工作表
Do
If xlsSheet.Cells(i, j) = "" Then '姓名=空 的时候,结束循环
Exit Do
End If
db.AddNew
db.Fields(k) = xlsSheet.Cells(i, j)
db.Fields(k + 1) = xlsSheet.Cells(i, j + 1)
db.Fields(k + 2) = xlsSheet.Cells(i, j + 2)
db.MoveNext
i = i + 1
Loop
End If
db.MovePrevious
db.Update
db.Close
data.Close
MsgBox "数据传输完毕!", , "提示"
Set xlsSheet = Nothing
xlsBook.Close
Set xlsBook = Nothing
xlsApp.Quit
Set xlsApp = Nothing
End Sub
Private Sub Command3_Click()
On Error GoTo ErrHandler
CommonDialog1.DialogTitle = "Open files"
CommonDialog1.Filter = "xls files(*.xls)|*.xls"
CommonDialog1.Flags = 4 '取消 “以只读方式打开” 复选框
CommonDialog1.ShowOpen
CommonDialog1.CancelError = True
If Len(CommonDialog1.FileName) <= 4 Then
Exit Sub
Else
Text2.Text = CommonDialog1.FileName
End If
ErrHandler:
Exit Sub
End Sub
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
End Sub
下载个“极速点击虎”软件就能做到批量导入啊,我们这做表格录入,日常办公重复录入的都是用极速点击虎这款软件,蛮好用!
1.打开access软件,新建空白桌面数据知库。
2.在【外部数据】面板中点击EXCEL图表。
3.在【选择数据源】面板的【文件名】中选择目标文件,并在下方选择【将数据源导入当前数据库的新表中】道,确定。
4.接下来选择【现实工作表】,显示整个工作表,然后下一步。
5.选择【第一行包含标题】专,这样你的EXCEL表格的第一行成了标题行,相当于筛选栏,下一步。
6.可以选中某列,设置该列的名称,下一步。
7.可以选择自己的主键,这里我选择手机属品牌为主键,下一步。
8.下面一直下一步,完成后可以看到EXCEL插入access中。
一、直接导入法
1.启动Access,新建一数据库文件。
2.在“表”选项中,执行“文件→获取外部数据→导入”命令,打开“导入”对话框。
3.按“文件类型”右侧的下拉按钮,选中“MicrosoftExcel(.xls)”选项,再定位到需要转换的工作簿文件所在的文件夹,选中相应的工作簿,按下“导入”按钮,进入“导入数据表向导”对话框(图1)。
4.选中需要导入的工作表(如“工程数据”),多次按“下一步”按钮作进一步的设置后,按“完成”按钮。
注意:如果没有特别要求,在上一步的操作中直接按“完成”按钮就行了。
5.此时系统会弹出一个导入完成的对话框,按“确定”按钮。
至此,数据就从Excel中导入到Access中。
二、建立链e69da5e887aae799bee5baa6e79fa5e98193364接法
1.启动Access,新建一数据库文件。
2.在“表”选项中,执行“文件→获取外部数据→链接表”命令,打开“链接”对话框。
3.以下操作基本与上述“直接导入法”相似,在此不再赘述,请大家自行操练。
注意:“直接导入法”和“建立链接法”均可以将Excel数据转换到Access中,两者除了在Access中显示的图标不同外,最大的不同是:前者转换过来的数据与数据源脱离了联系,而后者转换过来的数据会随数据源的变化而自动随时更新。
河南新华网络运营协会