首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将特定列从Excel传输到Access表中的特定列

将特定列从Excel传输到Access表中的特定列
EN

Stack Overflow用户
提问于 2017-10-13 19:34:20
回答 3查看 9.4K关注 0票数 7

我正在尝试将特定列从excel文档传输到Access数据库中的特定列中。例如,我的excel工作表可能包含以下内容:

代码语言:javascript
运行
复制
Date  Last  First  Gender   Month  School  Grade 
10/1  Rode  Danny  Male     Sept.  Ro ISD     10 
10/2  Dode  Manny  Male     Sept.  Ro ISD     11

我的数据库的“学生表”可能包含以下字段:

代码语言:javascript
运行
复制
Type Source Phone Email Last First School Major School Grade

我只希望导出标记为:最后、第一、学校、年级的excel列,并将它们放在我的学生表中的相应列中。我已经通过access查看了DoCmd.TransferSpreadSheet中的VisualBasic,但我不确定这是一个解决方案还是有其他方法。任何帮助都将是非常感谢的,因为它将节省我太多的时间!谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-10-13 20:01:23

要做到这一点,有很多方法。一种快速的方法是将Excel电子表格中的所有数据导入到一个表中(例如"MyExcelImportTable")。然后,您可以创建并运行一个查询,该查询将只追加所需的数据。

代码语言:javascript
运行
复制
INSERT INTO MyStudentTable(Last, First, School, Grade)
SELECT Last, First, School, Grade FROM MyExcelImportTable
票数 4
EN

Stack Overflow用户

发布于 2017-10-13 21:54:21

考虑直接从Excel工作表查询,因为两者都可以与Jet/ACE SQL引擎接口。下面假设工作表的数据以A1开头,列标题为。将以下操作查询集成到VBA DAO/ADO调用中,或将其直接置于Access的查询设计(SQL模式)中。

代码语言:javascript
运行
复制
INSERT INTO myAccessTable ([Last], [First], [School], [Grade])
SELECT [Last], [First], [School], [Grade] 
FROM [Excel 12.0 Xml;HDR=Yes;Database=C:\Path\To\Excel\File.xlsx].[SheetName$]
票数 5
EN

Stack Overflow用户

发布于 2017-10-13 19:52:51

DoCmd.TransferSpreadSheet只会传送一整张纸。有几种方法可以转移您需要的东西:

  1. 将所需列复制到第二个工作表,并将该工作表传输。
  2. 将数据保存为CSV,然后导入CSV,您可以在其中指定列
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46736875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档