VBA基础
一句查询代码实现Excel数据导入导出
2017-05-16 17:38:55

导入数据(导入数据时第一行必须是字段名):

    DoCmd.RunSQL "INSERT INTO 表名 SELECT * FROM [Excel 8.0;DATABASE=E:\桌面\测试数据.xls].[Sheet1$]"

    DoCmd.RunSQL "INSERT INTO 表名 SELECT * FROM [Sheet1$] IN 'E:\桌面\测试数据.xls'[EXCEL 8.0;]"

    DoCmd.RunSQL "INSERT INTO 表名 SELECT * FROM [Sheet1$] IN 'E:\桌面\测试数据.xls' 'EXCEL 8.0;'"

导出数据:

    DoCmd.RunSQL "SELECT * INTO [Excel 8.0;DATABASE=E:\桌面\测试数据.xls].[Sheet1] FROM 表名"

    DoCmd.RunSQL "SELECT * INTO [Sheet1] IN 'E:\桌面\测试数据.xls'[EXCEL 8.0;] FROM 表名"

    DoCmd.RunSQL "SELECT * INTO [Sheet1] IN 'E:\桌面\测试数据.xls' 'EXCEL 8.0;' FROM 表名"

要点:导入时工作表名称后面要加$(如Sheet1$),而导出时却不能加(如Sheet1),另外示例代码中的Sheet1可以是其它名称(如“测试数据”)。最初的写法: [Excel 8.0;DATABASE=E:\桌面\测试数据.xls].Sheet1   这个是参考帮助文档写的,经过仔细测试验证,的确存在问题,所以建议大家不要再这样写了