从Excel粘贴到Access – 非数字条目不通过

每隔一段时间一个用户会抱怨我的Access应用程序丢失字段。 我发现他们是对的。 在某些情况下访问将简单地放弃接受来自某个字段的复制和粘贴操作的数据。

就好像Access认为粘贴的数据只是数字数据,然后就会看到Alpha试图将其转换为数字,然后忽略它。

下面的图片不是自定义应用程序,而是一个新的Access文件,我只是复制和粘贴Excel数据原始。 我已经使用http://www.peterbuettner.de/develop/tools/clipview/看了原始的剪贴板数据,但我没有看到任何明显的问题或格式问题。

思考?

测试应用程序和数据

做一个'粘贴特殊'的操作和粘贴为纯文本。 为了便于使用,我build议将“特殊粘贴”button固定在快速访问工具栏上。

有时,当你让它猜测你正在粘贴的时候,Access会感到困惑。 以纯文本的方式粘贴是迫使其正常工作的最佳方式。

编辑

右键单击菜单的示例代码

Public Function CreateGeneralClipBoardMenu() On Error Resume Next CommandBars("GeneralClipboardMenu").Delete Dim cmb As Office.CommandBar Set cmb = CommandBars.Add("GeneralClipboardMenu", msoBarPopup, False, False) With cmb .Controls.Add msoControlButton, 21, , , True ' Cut .Controls.Add msoControlButton, 19, , , True ' Copy .Controls.Add msoControlButton, 755, , , True ' Paste Special End With Set cmb = Nothing End Function 

ID#755是Paste Special的神奇数字,我在这个列表中find它: http : //support.microsoft.com/kb/213552

访问选项 – 当前数据库 – 快捷function区栏

访问选项 - 当前数据库 - 快捷功能区栏

据我所知,这是一个公认的故障。 如果这是真的,那么你所能做的就是解决它,这不幸的是影响到你的最终用户而不是你自己。

在accessforums.net/access/copy-paste-csv-access-2010-a-20031.htmlfind类似的描述。

嗯。 那么,如果来自Excel的数据被sorting,使得其中一个字母数字条目位于顶行,会发生什么?

您必须在复制数据之前放置一个头[string,以便访问将所有以下数据视为string]。 在标题上方插入新列,然后将包括标题和空列在内的数据复制/粘贴到访问表中。