粘贴时锁定表顺序

Posted

技术标签:

【中文标题】粘贴时锁定表顺序【英文标题】:Lock table order when pasting 【发布时间】:2019-03-15 16:50:28 【问题描述】:

我是 Windows Access 新手。但是,我必须在工作中对我们的数据库进行一些更改。

我用 Excel 创建了一个新的记录列表,排序如下:

101A
102A
102.01A
102.02A
102.03A
103A
103.01A
...

当我将它复制并粘贴到我的访问表中时,MS Access 2007 会保留我的自定义顺序,直到我重新启动程序。当我重新打开它时,表格会以这种方式排序:

101A
102.01A
102.02A
102.03A
102A
103.01A
103A
...

我怎样才能避免这种情况?从 Excel 粘贴到 Access 时,有没有办法“锁定”我的自定义订单?

这些记录显示在下拉菜单中。但我无法在 Access 中“编码”,我只需要按照我在 Excel 表中建立的确切顺序粘贴这些表记录来更改它们。

【问题讨论】:

【参考方案1】:

数据库不像 Excel 工作表那样工作。

如果您从表中选择行(直接打开表,或将其用作下拉框的行源),则始终按特定顺序返回行。

如果不指定顺序(ORDER BY ... 子句),则主键决定顺序。在您的情况下,此数据列可能是主键。

由于. 在字母之前排序(请参阅 Ascii 表),因此您会得到您所看到的结果。

为避免这种情况,您需要一个额外的列,例如“Sortnumber”,您可以在其中定义所需的排序,并在ORDER BY 子句中使用。

【讨论】:

【参考方案2】:

是的,我解决了创建 ID 列并将其设置为 ORDER BY .. 中的主要问题的问题。条款。谢谢。

【讨论】:

以上是关于粘贴时锁定表顺序的主要内容,如果未能解决你的问题,请参考以下文章

仅在复制/粘贴时锁定文件,而不是在剪切/粘贴时锁定

access文件共享锁定数溢出怎么办

文档可修改,但不能复制粘贴,怎么办?

运行时错误“1004”:工作表类的粘贴方法失败错误

粘贴值时如何引用非活动工作表?

VBA复制粘贴到新工作表,If语句和转置