设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 4742|回复: 21
打印 上一主题 下一主题

[窗体] 导入Excel到Access的问题

[复制链接]
1#
发表于 2009-1-30 13:48:25 | 显示全部楼层
本帖最后由 ACMAIN_CHM 于 2009-1-30 13:57 编辑

如果知道SHEET名字的话,可以用下列代码



Private Sub Command21_Click()
    If Me.xls_path = "" Or IsNull(Me.xls_path) Then
        MsgBox "请按…按钮选择要导入的Excel数据表!", vbExclamation, "提示" '如果文件路径为空时提示
        Exit Sub
    End If
   
    Dim sSQL As String
    Dim nRowAffected As Long
   
    sSQL = "insert into 人员表" _
        & " select * from  [222$] IN '' [Excel 8.0;Database=" & Me.xls_path.Value & "] " _
        & " where 编号 not in (select 编号 from 人员表)"
    CurrentProject.Connection.Execute sSQL, nRowAffected
   
    If nRowAffected > 0 Then
        msbgox "[" & nRowAffected & "] Row inserted from excel file " & Me.xls_path.Value
    End If
   
    MsgBox "数据导入成功!", vbInformation, "导入成功" '提示导入成功
End Sub





*****************
*  一切皆有可能 *
*****************

QQ群48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
2#
发表于 2009-1-30 17:20:58 | 显示全部楼层
4楼的nRowAffected做什么用的?
ycxchen 发表于 2009-1-30 16:57


以下摘自 Microsoft Access Help

Execute 方法 (ADO Connection)
执行指定的查询、SQL 语句、存储过程或提供者特有的文本。

语法

对于不是以行返回的命令字符串:
connection.Execute CommandText, RecordsAffected, Options

对于以行返回的命令字符串:
Set recordset = connection.Execute (CommandText, RecordsAffected, Options)
返回值返回 Recordset 对象引用。

参数
CommandText
String 值,包含要执行的 SQL 语句、存储过程、URL 或提供者特有的文本。此外,仅当提供者被 SQL 识别时才可使用表名称。例如,如果使用“Customers”作为表名称,则 ADO 将自动预先根据标准 SQL Select 语法构成“SELECT * FROM Customers”,并将其作为 T-SQL 语句传递给提供者。
RecordsAffected
可选。Long 变量,提供者向其返回操作影响的记录数目。
Options
可选。Long 值,指示提供者计算 CommandText 参数的方式。该值可以是一个或多个 CommandTypeEnumExecuteOptionEnum 值的位掩码。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-4 19:12 , Processed in 0.089959 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表