帮助字符串中的函数

时间:2010-03-08 15:53:25

标签: string vba syntax function

我有一个变量emailBody,它被设置为存储在数据库中的字符串。电子邮件正文通过dlookup函数设置为字符串。

  

emailBody = DLookup(“emailBody”,“listAdditions”,“Id =”& itemType)

电子邮件正文设置的字符串包含一个IIf函数(包括一个dlookup函数)。当
?emailBody在运行时在即时窗口中输入,它显示emailBody设置为以下字符串:

  

新商品是“& Iif(dlookup(”IsVague“,”CommodityType“,”Description =“& newItem)=”1“,”模糊。“,”不含糊“。)

但是,我希望评估dlookup和IIf函数,并将结果存储在字符串中。如何在我的数据库中正确格式化emailBody字符串(“新商品......”),以便评估函数并将结果存储在emailBody变量中?

3 个答案:

答案 0 :(得分:1)

你的问题有点不清楚,但如果[Id](或[描述])是一个字符串,那么你的Dlookup必须是这样的:

 emailBody = DLookup("emailBody", "listAdditions", "Id = '" & itemType & "'")

 emailBody = DLookup("emailBody", "listAdditions", "Id = """ & itemType & """")

也就是说,你的常量应该用引号括起来。您可以使用'(单引号)或“”(加倍双引号)。

答案 1 :(得分:1)

我有点担心newitem的价值,但一般来说你可以使用Eval:

s = """The new commodity is"" & " _
& "Iif(dlookup(""IsVague"", ""CommodityType"", ""Description= "" & newItem)=""1"", ""vague."", ""not vague."")"
s2 = Eval(s)

我不确定这是怎么回事,想一想。

答案 2 :(得分:1)

所以你有一个存储在表字段中的确切字符串,并且你想让Access / VBA评估它,对吗?

"The new commodity is " & Iif(dlookup("IsVague", "CommodityType", "Description= " & newItem)="1", "vague.", "not vague.")

如果是这样,请尝试使用Eval()命令:

emailBody = Eval(DLookup("emailBody", "listAdditions", "Id = " & itemType))