删除带长文本的宏

时间:2018-03-29 07:23:53

标签: ms-access macros ms-office ms-access-2016

我有一个带有CODE(短文本),VALUE(短文本)和DESCRIPTION(长文本)列的LABELS表。

我还有一个表LABELS_HISTORY,列号相同。

我在LABELS上创建了After After After宏,它在LABELS_HISTORY中创建了一条新记录,其中包含LABELS中已删除记录的值。

如果我只将它用于CODE和VALUE(短文本),它可以正常工作。但是,如果我尝试复制描述,它也不起作用(没有错误,只是没有在LABELS_HISTORY中创建记录)。

这就是宏的样子:(我不能嵌入图片 - 新手)

https://i.stack.imgur.com/igKlh.png

如果您不想打开链接:

标签:删除后: 在LABELS_HISTORY中创建记录

SetField

         Name      Description

         Value   = [Old].[CODE]

它适用于短文本字段。唯一的问题是长文本。

访问2016

1 个答案:

答案 0 :(得分:0)

[Old].无法使用长文本值。据我所知,没有解决办法。

这确实会产生错误。在 USysApplicationLog 表中,应记录一个错误,该错误具有以下描述:

  

' [旧]。[说明]'值不可用,因为该字段是memo,富文本,超链接或OLE对象类型。

(备忘录是长文字段的旧名称,因此不可用)。

您还可以在MS SQL Server中看到此行为,其中 Text NText 类型的字段的先前值在触发器中也不可用。

建议:始终在更改表中记录 Current 值,而不是 Previous 。这样,你总是拥有每条记录的完整历史记录,而且你不会遇到这些事情的麻烦。