我无法让 IIf() 函数在 Microsoft Access 2010 64 位 Windows 7 Professional 的 Expression Builder 中工作。我已将问题归结为最基本的形式,在我看来,表达式生成器中的 IIf 函数确实不受支持。我正在尝试按照http://msdn.microsoft.com/en-us/library/gg241307%28v=office.14%29.aspx提供的说明进行操作。
细节:我有一个简单的数据库,我只从一个表中提取一个字段:表:schedule_data,字段:目的。在右侧的第一个空列中,我正在尝试:
MyExp: IIf( IsNull([purpose]) , "n/a" , [purpose] )
我尝试了 IIf() 函数的许多变体,包括布尔值,例如:
MyExp: IIf(1=2,"Wow!","Bah!")
并且每次返回的错误都是:“您输入的表达式包含无效的语法。” + "您省略了操作数或运算符,输入了无效字符或逗号,或者您输入的文本没有用引号引起来。" 给出的选项是“OK”和“Help”,单击“Help”按钮将我直接带到帮助系统的首页(即不会将我引导至任何特定于我的问题的内容。)
我的问题是,这可能与我的 64 位安装有关吗?我知道 64 位应用程序中的某些功能尚未得到广泛支持。我已经在其他语言和应用程序中使用了等效功能,例如 WordPerfect(Perfect Script),效果很好。请帮忙; 这真让我抓狂。
根据要求:这是我在切换到 SQL 视图时粘贴的 SQL。在我纠正错误之前,它不会让我切换视图,所以我只需要删除该列:
SELECT schedule_data.sdate, schedule_data.purpose FROM schedule_data;